Configurare un server LAMP con Ubuntu Inviato da maurop Mauro Pedrali on the web Questa guide spiega come configurare un server LAMP, acronimo di Linux Apache Mysql Php, su un pc in locale, per realizzare e testare i propri siti web. Essendo questa configurazione realizzata su un pc in locale le impostazioni saranno le minime indispensabili. Io utilizzo questa configurazione per realizzare i siti web in locale prima di trasferirli sul server remoto; Personalmente utilizzo il CMS Joomla!, voi potete utilizzare Xoops, Drupal o qualunque altro CMS preferiate. In questa guida utizzero' Joomla solo per praticita', in quanto sono in possesso di una versione di questo CMS. Supponiamo di voler realizzare un sito internet denominato "www.sitodiprova.it", essendo in locale possiamo attribuire al nostro sito un nome qualsiasi, quando lo andremo a caricare in remoto provvederemo a modificare il file configuration.php modificando alcuni parametri. Iniziamo procurandoci una copia dell'archivio contenente il nostro CMS da uno dei siti sopra linkati e salviamola nella nostra Home, io ripeto utilizzero' Joomla. Apriamo il terminale (o Shell) e digitiamo i seguenti comandi:
$ cd /var/www/ $ sudo mkdir html Password: (inserire la password) Per comodita', essendo in locale e quindi in fase di prova, potremmo avere la necessita' di dover configurare piu' siti web, per cui abbiamo creato la directory html nella quale inseriremo tutti i nostri siti. Aprite la finestra in cui avete salvato Joomla, ora dovrete estrarre i file in esso contenuti, per fare cio' avete due possibilita': 1- Doppio click sul file, premere il pulsante "Estrai" ed estraete tutti i file nella vostra Home, questa procedura crea una cartella con lo stesso nome dell'archivio, rinominatela in sitodiprova ; 2- Tramite terminale, eseguendo i seguenti comandi: Quando apriamo il terminale la directory corrente e' la Home utente, proprio dove abbiamo salvato il nostro archivio di Joomla. La versione in mio possesso e' "Joomla_1013_stabile_ita.tgz", voi scaricate sempre l'ultima versione stabile disponibile. $ mkdir sitodiprova
$ mv Joomla_1013_stabile_ita.tgz sitodiprova/ $ cd sitodiprova $ tar -xvzf Joomla_1013_stabile_ita.tgz (questo comando estrae i file di Joomla nella directory corrente) $ rm Joomla_1013_stabile_ita.tgz Ora che abbiamo estratto l'archivio in una directory dobbiamo spostarla nella cartella che abbiamo creato prima in /var/www/html/; Questa cartella necessita dei permessi di amministratore, per cui utilizziamo il terminale e digitiamo i seguenti comandi: $ sudo mv sitodiprova /var/www/html/ Dopo aver spostato la cartella dobbiamo modificarle gli attributi: permessi e proprietario. Sempre dal terminale: $ cd /var/www/html/ $ sudo chmod -R guo+rwx sitodiprova/
Password: (inserire la password) $sudo chown -R www-data.www-data sitodiprova/ chmod e' il comando per modificare i permessi; chown e' il comando per codificare il proprietario e il gruppo; guo significa group, user e other; rwx sono i permessi read, write, execute; www-data.www-data indentificano l'utente e il gruppo proprietari del server web apache. A questo punto passiamo alla configurazione del web server Apache. Modifichiamo il file /etc/apache2/sites-enabled/000-default, questo file contiene i parametri di configurazione del virtual host. Facciamone una copia relativa al nostro sito, apriamo il terminale ed eseguiamo: $ cd /etc/apache2/sites-enabled/
$ sudo cp 000-default oo1-sitodiprova Password: (inserire la password) Apriamo il file con un editor di testo e andiamo ad appostare le dovute modifiche $ sudo gedit 000-sitodiprova Riporto integralmente il contenuto del file con le opportune modifiche effettuate. NameVirtualHost 127.0.0.1:80 <VirtualHost *> # ServerAdmin webmaster@localhost DocumentRoot /var/www/html/sitodiprova ServerName www.sitodiprova.it <Directory />
Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/html> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all # This directive allows us to have apache2's default start page # in /apache2-default/, but still have / go to the right place #RedirectMatch ^/$ /apache2-default/ </Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog /var/log/apache2/sitodiprova.error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn
CustomLog /var/log/apache2/sitodiprova.access.log combined ServerSignature On Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory>
</VirtualHost> Ho evidenziato in grassetto sottolineato le modifiche da apportare. Ora andiamo a modificare il file /etc/hosts. Apriamo il file con un editor di testo e andiamo ad appostare le dovute modifiche $ sudo gedit /etc/hosts Password: (inserire la password) Riporto integralmente il contenuto del file con le opportune modifiche effettuate. 127.0.0.1 localhost 127.0.1.1 ubuntu
127.0.0.1 www.sitodiprova.it Fatto questo non ci resta che riavviare il nostro web server apache e mysql, da terminale digitiamo: $ sudo /etc/init.d/apache2 restart Password: (inserire la password) $ sudo /etc/init.d/mysql restart La guida termina qui. Per indicazioni piu' specifiche riguardo alla configurazione del web server apache rimando al sito ufficiale www.apache.org