Come installare un web server linux con apache, mysql, php
Buonasera! Volete crearvi il vostro web server personale o imparare a gestirne uno? siete nel posto giusto!
prima di tutto: cosa occorre?
un server è una macchina che deve stare sempre accesa e pronta a soddisfare le richieste dei client (pc) che vi accedono, tutto questo viene gestito tramite dei software anche chiamati applicativi server. gli applicativi server possono essere installati su qualunque macchina con qualunque architettura per cui sono compilati. quindi in sostanza, qualunque macchina, da pc di casa a server dedicato, perfino un cellulare, può fare da server.
L’installazione digitiamo
sudo -i
per diventare amministratori, successivamente
apt-get update
per aggiornare l’elenco delle dipendenze, e poi
1) Installiamo il web server apache:
apt-get install apache2 apache2-utils libexpat1 apache2-suexec
riceveremo un warning perchè non è ancora stato definito il nome del server, andiamo quindi a impostarlo:
nano /etc/apache2/apache2.conf
e inseriamo in fondo al file di configurazione la riga:
ServerName NomeDelNostroServer
salviamo il file, usciamo e ricarichiamo la configurazione di apache con il comando
service apache2 force-reload
A questo punto, dovremmo già riuscire a vedere il nostro rudimentale web server in funzione! apriamo un browser, digitiamo l’indirizzo “localhost” oppure “127.0.0.1” e se tutto è andato liscio, dovremmo vedere una schermata come questa:
BENE! ora…
2) Installiamo PHP 5
apt-get install php5 libapache2-mod-php5
Anche con php dovremmo essere aposto… a parte se avete debian squeeze… avete la debian squeeze? in quel caso andate arimuovere o commentare (con un ; a inizio riga) il parametro memory_limit nel file di configurazione:
nano /etc/php5/cli/php.ini
Bene! stiamo iniziando a porre le basi per un sito dinamico e completo. Per l’installazione di una qualunque piattaforma, dawordpress a joomla a prestashop ecc…ci occorrerà anche un database dove memorizzare i contenuti del sito:
3) per installare il mysql…
apt-get install mysql-server mysql-client
Durante l’installazione, ci verrà chiesto di definire una password per l’accesso scrivetene una a piacere, potete lasciarla anche vuota, basta che non ci stiate a pensare troppo come nel video!!
4) installiamo phpmyadmin
per gestire i database da interfaccia web… è comodo…
apt-get install phpmyadmin
alla schermata successiva, spuntiamo apache2 tra i “Server web da riconfigurare automaticamente”
alla domanda “configurare il database di phpmyadmin con dbconfig-common?”
rispondiamo sì quindi, ci viene chiesta prima, la password di root del database (precedentemente definita),
poi la password di phpmyadmin
Bene!
possiamo confutare il nostro operato andando all’indirizzo http://localhost/phpmyadmin
Il DocumentRoot del server Apache, che di default si trova in /var/www, ma sarebbe preferibile spostarla nella vostra home per più di un motivo, tra cui una questione di permessi sui file, una migliore gestione del file system ed una più efficiente procedura in caso di crash o backup del sistema.
Anche in questo caso, le operazioni da eseguire non richiedono particolari skills in materia di configurazione webserver.
Nella vostra home, create una directory, chiamata public_html, che sarà poi la candidata a diventare la vostra web root.
mkdir /home/utente/public_html
Ovviamente, in questo e nei prossimi passi, ricordatevi di sostituire a utente il nome della vostra home.
Apache2 ha il concetto di siti, che sono configurazioni separate che il webserver andrà a leggere, caricate in/etc/apache2/sites-available. Di default, c’è solamente un sito disponibile, chiamato default, ma possono essere caricate più configurazioni contemporaneamente, attivando di volta in volta soltanto quelle necessarie.
Nel vostro caso, l’obiettivo è di creare un nuovo sito in cui spostare la DocumentRoot in/home/utente/public_html/ e quindi attivarlo su Apache2.
Per creare il nuovo sito:
- Copiare il sito di default come punto di partenza.
sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/miosito
- Modificare la nuova configurazione con un editor di testo, ad esempio:
sudo gedit /etc/apache2/sites-available/miosito
- Cambiare il parametro DocumentRoot per fare in modo che punti al nuovo percorso, ad esempio/home/utente/public_html/.
- Cambiare la direttiva Directory, sostituendo <Directory /var/www/> con <Directory /home/utente/public_html/>.
- Salvare il file
Ora è necessario disattivare il vecchio sito (default) ed attivare quello nuovo (miosito). Per fare ciò, Ubuntu ha provveduto a creare due comodissimi comandi, che sono rispettivamente a2dissite e a2ensite.
sudo a2dissite default && sudo a2ensite miosito
Ultimo ma non meno importante passaggio è il riavvio di Apache2:
sudo /etc/init.d/apache2 restart
Se doveste avere dimenticato di creare la directory /home/utente/public_html/, ricevereste un messaggio di avvertimento.
Aprendo il browser su all’indirizzo http://localhost/ dovreste essere reindirizzati al contenuto di ~/public_html/.
Per aumentare la sicurezza e aggiungere qualche personalizzazione, potrete modificare il file principale per la configurazione di Apache 2, che trovate in /etc/apache2/apache2.conf, ricordandovi di creare una copia di backup prima di procedere con le vostre prove e di riavviare apache2 per applicare le modifiche.
Per quanto riguarda la configurazione di PHP, anticipo solamente che il file di configurazione, php.ini, è presente all’interno della directory /etc/php5/apache2.
Ricordatevi infine di spostare tutto il contenuto di /var/www nella vostra nuova DocumentRoot.
ora il nostro web server è pronto a ospitare ogni genere di sito! dall’ e-commerce al blog, al sito tradizionale, con la piattaforma che sceglieremo!