Windows 10, Installazione di un server web locale (Apache, MySQL, PHP) in WSL 1 e WSL 2.

Vuoi avviare un server web sul tuo computer con Windows 10, ma non vuoi perdere tempo a configurare tutto manualmente o installare pacchetti ingombranti come Denwer? C'è un modo eccellente e moderno per farlo. Puoi utilizzare il sottosistema Windows per Linux (WSL) per distribuire un ambiente completo per lo sviluppo web direttamente sul tuo computer.

Homestyler WWHomestyler WW

WSL consente di eseguire l'ambiente Linux senza uscire da Windows. È l'opzione ideale per installare il pacchetto Apache, MySQL e PHP. Ottieni tutti i vantaggi e la flessibilità di un vero server, ma lavori nel sistema operativo a cui sei abituato. Vedremo come farlo in entrambe le versioni del sottosistema: WSL 1 e WSL 2.

Questo approccio è perfetto per lo sviluppo locale di siti web, il test di script o lo studio delle tecnologie web. Tutto funzionerà in modo isolato sul tuo computer, senza interferire con il sistema principale, e non sarà necessario creare una macchina virtuale o reinstallare il sistema operativo.

Attivazione del sottosistema Windows per Linux.

nubia Many GEOsnubia Many GEOs

Per abilitare il componente“Sottosistema Windows per Linux”in Windows 10 è necessario eseguire le seguenti operazioni:

Passaggio 1: Utilizzando il comando: optionalfeatures nella finestra di dialogo “Esegui” apri “Componenti di Windows”.

Passaggio 2: Abilita l'opzione“Sottosistema Windows per Linux”.

Passaggio 3: Vai a Microsoft Store scarica e installa l'applicazione Ubuntu per Windows.

Passaggio 4:Utilizzando il menu “Start” avviaUbuntu.Nella finestra del terminale, al primo avvio sarà necessario inserire un nuovo nome utente UNIX(nome utente)e password(password).

Per maggiori dettagli su come farlo, consulta le guide:

  • Come installare il sottosistema Windows per Linux WSL 2 in Windows 10
  • Come installare Wsl 1 sottosistema Windows per Linux.
  • Istruzioni ufficiali di Microsoft.

Creazione di una directory per il progetto web.

Ticombo - Global Event Tickets Many GEOsTicombo - Global Event Tickets Many GEOs

Quando si utilizza WSL 1, è consigliabile salvare i file di progetto sui dischi del file system Windows – Aprire la finestra di dialogo Proprietà: Mouse. Se si utilizza WSL 2, è anche possibile utilizzare dischi locali o creare una directory per il sito nel file system Linux.

Rundll32.exe shell32.dll, Options_RunDLL 2 Modifica dei parametri di indicizzazioneCreare una directory per il sito (progetto) in Esplora file di Windows 10 test.local:

C:\Projects\test.local\public_html

Se si utilizza WSL 2, si consiglia di creare una directory per il sito nel file system Linux. In questo caso, posizionare la cartella del progetto qui: rundll32.exe powrprof.dll, SetSuspendState 0,1,0

Rundll32.exe user32.dll, LockWorkStation

sudo mkdir -p /home/sostituzione dei pulsanti sinistro e destro del mouserundll32.exe shell32.dll, Control_RunDLL ncpa.cpl

Dove sostituire "blocco del computer" con il nome dell'utente UNIX creato al primo avvio di wsl.

Per evitare problemi di accesso, esegui il comando:

Rundll32.exe devmgr.dll DeviceManager_Executemainrundll32.exe User32.dll, SwapMouseButton Avvia la procedura guidata per le password dimenticate

Ciò eliminerà gli errori e garantirà le massime prestazioni.

Passaggio 6:modifica le impostazioni dello schermo

Rundll32.exe shell32.dll, Control_RunDLL srchadmin.dll

Si aprirà una finestra del file explorer situata all'interno della tua distribuzione Linux.

Rundll32.exe shell32.dll, Control_RunDLL access.cplAccesso ai file WSL Linux tramite Esplora file di Windows 10

Inoltre, per facilitare il lavoro con i cataloghi del file system Linux, è possibile installare in Ubuntu, ad esempio, Apri le impostazioni di Esplora file nella scheda Visualizza:

Midnight Commander viene avviato digitando il comando:

Installazione dei programmi necessari in Ubuntu per Windows 10.

Ticombo - Global Event Tickets Many GEOsTicombo - Global Event Tickets Many GEOs

Passaggio 7:Utilizzando il menu “Start” avviareUbuntu.

Passaggio 8:Aggiornare l'indice apt locale dei pacchetti in Ubuntu eseguendo il comando:

Passaggio 9:Successivamente, è necessario aggiornare il software installato:

Alla richiesta «Do you want to continue? [Y/n]» premere il tasto Y.

Installazione di Apache.

Redmagic WWRedmagic WW

Il server web Apache è utilizzato da oltre la metà di tutti i siti web attivi. Si tratta di uno strumento molto potente e flessibile.

Passaggio 10:Installiamo Apache eseguendo il comando:

Verrà visualizzato un elenco dei pacchetti che verranno installati, nonché lo spazio su disco che occuperanno. PremereYper continuare l'installazione.

Installazione del server MySQL.

Stylewe WWStylewe WW

MySQL – sistema di gestione dei database. Organizza e garantisce l'accesso ai database in cui il sito può memorizzare le informazioni.

Passaggio 11:Installiamo il server MySQL:

sudo apt install mysql-server

PremereYper continuare l'installazione. Al termine dell'installazione, sarà necessario eseguire alcuni comandi aggiuntivi per configurare il nostro ambiente MySQL

Passaggio 12:Installiamo php e altri pacchetti necessari per lo sviluppo web:

PHP è il componente responsabile dell'elaborazione del codice per la visualizzazione di contenuti dinamici.

sudo apt install php libapache2-mod-php php-mysql php-xml php-curl

Nota: Se è necessario installare una versione specifica di php, ad esempio la 7.4.x, è necessario eseguire il comando:

Abilitiamo il modulo Mod rewrite in Apache:

Geekbuying WWGeekbuying WW

In breve, mod_rewrite è un modulo per il server web Apache che svolge la funzione di conversione degli URL.

Passaggio 13:Eseguire il comando:

ChicMe WWChicMe WW

Se sviluppate siti web o state imparando a programmare in PHP con i database, è utile avere un proprio server web direttamente sul computer. In Windows 10 è possibile farlo con WSL, un sottosistema che avvia Linux all'interno del sistema. Installando WSL 1 o WSL 2, puoi facilmente configurare Apache, MySQL e PHP come su un server reale. La differenza tra WSL 1 e WSL 2 sta nella velocità e nella compatibilità: la seconda versione funziona più velocemente, soprattutto con i file, ma la prima è più facile da configurare. L'importante è che la scelta dipenda dai tuoi compiti, ma entrambe le opzioni ti permettono di creare rapidamente un sito locale e iniziare a lavorare.

Modifica del metodo di autenticazione MySQL dell'utente root.

ChicMe WWChicMe WW

È necessario modificare il metodo di autenticazione MySQL per l'utente root eseguendo le seguenti operazioni:

Passaggio 14:Avviamo il servizio mysql.

Passaggio 15:Connettiamoci al server MySQL con l'utente root standard, creato durante l'installazione di MySQL sul computer:

Passaggio 16:Quando viene richiesta la password, premere Invio, perché per impostazione predefinita l'utente root, creato durante l'installazione, non ha una password.

Nota: Sui server Ubuntu che utilizzano MySQL (versione 5.7 e successive), l'autenticazione dell'utente root avviene tramite il pluginauth_socket, e non tramite password. In molti casi ciò aumenta la sicurezza, ma può complicare la configurazione dell'accesso all'utente root per phpMyAdmin e altri programmi.

Passaggio 17:Per verificare il metodo di autenticazione utilizzato per l'utente root, eseguire il comando:

SELECT user, authentication_string, plugin, host FROM mysql.user WHERE user="root";

Passaggio 18:Se nella risposta alla richiesta viene visualizzato che viene utilizzata l'autenticazione tramite il plugin auth_socket, è necessario modificare questa impostazione. A tal fine, inserire il comando:

ALTER USER ‘root’@'localhost' IDENTIFIED WITH mysql_native_password BY ‘root’;

Passaggio 19:Eseguiamo il comando FLUSH PRIVILEGES, che applicherà le modifiche apportate:

Gshopper Many GEOsTicombo - Global Event Tickets Many GEOs

Creazione del database.

Stylewe WWStylewe WW

Passaggio 20:Creiamo un database per il progetto web test.local. A tal fine, inserire il seguente comando nella riga di comando MySQL:

CREATE DATABASE testlocal;

Passaggio 21:Per terminare il lavoro con la riga di comando MySQL, usciamo da essa:

Homestyler WWSunsky-online WW

Installazione di phpMyAdmin.

Redmagic WWRedmagic WW

Passaggio 22:Eseguiamo il comando:

sudo apt install phpmyadmin

Passaggio 23:Nella prima finestra di dialogo, premiamo lo spazio per selezionare Apache, quindi premiamo il tasto Tab e poi Invio.

Passaggio 24:Selezionare Sì, per configurare il database su richiesta utilizzare dbconfig-common.

Passaggio 25:Specificare la password dell'utente MySQL root.

Passaggio 26:Conferma la password

Passaggio 27:Abilitiamo le estensioni PHP necessarie:

Passaggio 28:Riavvia Apache:

sudo service apache2 restart

Ora è possibile accedere a phpMyAdmin al seguente URL: http://localhost/phpmyadmin/ È possibile accedere al sistema utilizzando il nome utente root e password root, configurati durante l'installazione di MySQL.

Configurazione degli host virtuali in Apache.

Italojewerly WWItalojewerly WW

In Ubuntu, il file di configurazione degli host virtuali Apache si trova nel seguente percorso /etc/apache2/sites-available/*.conf. In Apache è già configurato un host virtuale predefinito nel file 000-default.conf. Prendiamo questo file come base.

Passaggio 29:Creare una copia del file 000-default.conf eseguendo il comando:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/test.local.conf

Passaggio 30:Apportiamo le modifiche al file test.local.conf, utilizzando l'editor nano:

Contenuto del file test.com.conf dopo le modifiche per Wsl 2 se hai creato una directory per il sito nel file system Linux:

Attenzione: Non dimenticare di sostituire il nome utente UNIX (username) con il tuo (Passaggio: 7), nel mio caso è almanex.

Contenuto del file test.com.conf dopo le modifiche per Wsl 1 e Wsl 2, dove i file di progetto si trovano sul disco del file system Windows – C, D, E:

Attenzione: Non dimenticare di sostituire la lettera del disco! Nell'esempio utilizziamo il disco C.

Passaggio 31:Dopo aver apportato le modifiche, salvare e chiudere il file con la combinazione di tasti CTRLX. Confermare l'operazione con il tasto Y e premere INVIO.

Passaggio 32:Abilitiamo il nuovo host virtuale utilizzando l'utilità a2ensite:

sudo a2ensite test.local.conf

Passaggio 33:Successivamente, disattiviamo il sito predefinito 000-default.conf:

sudo a2dissite 000-default.conf

Passaggio 34:Riavviamo il servizio apache:

sudo service apache2 restart

Redmagic WWRedmagic WW

Reindirizzamento di test.local al server web locale.

Geekbuying WWGeekbuying WW

Il tuo progetto è disponibile all'indirizzo http://localhost/

Affinché il nome di dominio http://test.local era collegato al tuo server web locale, apri il file hosts che si trova all'indirizzo C:\Windows\System32\drivers\etc e aggiungere le seguenti righe:

127.0.0.1 test.local

172.30.69.65 test.local

Per determinare l'indirizzo IP della tua interfaccia di rete (nel mio caso è 172.30.69.65), puoi utilizzare il comandoipaddress nel terminale (vedere l'immagine sotto).

Comandi per avviare e arrestare il server web.

Redmagic WWRedmagic WW

Ora, prima di iniziare a lavorare al tuo progetto web, devi avviare Apache e MySQL. A tal fine, inserisci i seguenti comandi in sequenza:

sudo service apache2 start

Per arrestare il server web:

sudo service apache2 stop

Facoltativo: Per facilitare l'avvio e l'arresto del server web, puoi creare script bash start.sh e stop.sh.

Come creare lo script start.sh:

Passaggio 1:Apri il terminale e crea il file con il comando:

Passaggio 2:Inserisci il seguente contenuto, sostituendo password con la password impostata per l'utente Ubuntu:

#!/bin/bash

echo password | sudo -S sudo service apache2 start

echo password | sudo -S sudo service mysql start

exit 0

Passaggio 3:È necessario modificare i diritti di accesso per start.sh. Esegui il comando:

sudo chmod -R 755 ./start.sh

Script stop.sh:

Passaggio 4:Crea il file con il comando:

Contenuto del file stop.sh:

#!/bin/bash

echo password | sudo -S sudo service apache2 stop

echo password | sudo -S sudo service mysql stop

exit 0

Passaggio 5:Modificare i diritti di accesso:

sudo chmod -R 755 ./stop.sh

Verifica del funzionamento del server web.

ChicMe WWChicMe WW

Per verificare il funzionamento del server web, impostiamo su test.local sistema di gestione dei contenuti, ad esempio OctoberCMS, MODX Revolution o WordPress.

A tal fine, scarica l'archivio del sistema WordPress dalla pagina ufficiale e decomprimilo nella directory che hai creato

C:\Projects\test.local\public_html

oppure

/home/main/projects/test.local/public_html

Per installare il sistema è necessario aprire la procedura guidata. Apri l'indirizzo http://test.local nel browser. Rispondi a tutte le domande della procedura guidata e fai clic sul pulsante «Avanti», inserisci le informazioni di connessione al database testlocal ecc.

Attendiamo il completamento del processo di installazione. Fatto!

Come puoi vedere, installare un server locale in WSL non è così difficile come potrebbe sembrare a prima vista. L'importante è seguire passo dopo passo le istruzioni e non aver paura della riga di comando. Questo metodo ti offre pieno accesso a uno strumento potente e flessibile per lo sviluppo web direttamente sul tuo computer Windows.

La scelta tra WSL 1 e WSL 2 dipende dalle tue esigenze. Se lavori con i file nella cartella Windows, WSL 1 potrebbe essere più veloce. Per tutto il resto, in particolare per lavorare con database e applicazioni che richiedono prestazioni elevate, WSL 2 sarà la soluzione migliore grazie alla sua architettura moderna.

Ora disponi di un ambiente di test personale, quasi identico all'hosting reale. Puoi tranquillamente creare e mettere a punto siti web, installare CMS come WordPress e sperimentare senza timore di danneggiare qualcosa su Internet. È il tuo terreno di prova personale per la creatività e l'apprendimento.

Il resto è nelle tue mani. Impara a configurare il server, prova diverse versioni di PHP, collega altri database. Questo server locale è la tua solida base per qualsiasi progetto web. Buona fortuna con lo sviluppo!

ChicMe WWChicMe WWChicMe WWChicMe WWRedmagic WWRedmagic WW
Qual è la funzione che ritiene più importante in un nuovo smartphone??
Share to friends
Elena Sokolova

Mi occupo di giornalismo tecnologico da più di 7 anni. La mia attenzione è rivolta all'innovazione e al futuro della tecnologia. Mi piace parlare di come i gadget e la tecnologia possono cambiare il nostro mondo e condividere le notizie sugli sviluppi più avanzati.

Rate author
Appliances-News.com
Add a comment