3463
Commento:
|
8849
presto potrebbe essere sostituita da un altro link
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 1: | Linea 1: |
#format wiki #LANGUAGE it [[BR]] ||<tablestyle="float:right; font-size: 0.9em; width:30%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">'''Indice'''[[BR]][[TableOfContents(1)]]|| |
|
Linea 2: | Linea 7: |
---- | |
Linea 4: | Linea 8: |
L'accoppiata '''PHP e MySQL''' è una delle più potenti per la '''gestione dati''' e la creazione di '''pagine dinamiche''' per il web. Di seguito vedremo come installarli su un web server quale '''Apache''' e come configurarli. | Questo ''how-to'' è frutto della mia esperienza personale nell'installazione di '''LAMP''' su '''Ubuntu''', testata anche su diverse macchine; tuttavia è possibile che in alcuni casi si possa incorrere in errori di vario genere. Nell' ''how-to'' dedicherò alcune righe alle [:ApachePHPMySQL#errori:problematiche] più comuni e alle relative soluzioni, ma vi invito a postare sul [http://forum.ubuntu-it.org/ forum] nel caso doveste andare in contro ad imprevisti durante l'installazione o la configurazione dei vari applicativi. |
Linea 6: | Linea 10: |
= Apache = ---- |
|
Linea 9: | Linea 11: |
Per l'installazione di Apache potete tranquillamente fare riferimento all'altra guida presente nel wiki http://wiki.ubuntu-it.org/WebServer . Nel nostro caso però basta solamente '''installare il web server e configurarlo per il php''', procediamo all'installazione tramite apt-get ma potete benissimo usare Synaptic. | [[Immagine(Icone/Piccole/warning.png,,left)]] [[BR]]'''Attenzione:''' Questa guida vuole aiutare l'utente nell'installazione di una piattaforma di sviluppo '''LAMP''', anzi '''UAMP''' ('''U'''buntu, '''A'''pache, '''P'''HP, '''M'''ySQL) funzionante, e non nella configurazione di un ''webserver'' ! |
Linea 11: | Linea 13: |
Dal terminale: | |
Linea 13: | Linea 14: |
{{{sudo apt-get install apache2}}} | = Installazione = |
Linea 15: | Linea 16: |
Adesso che '''apache è installato''' dobbiamo '''abilitare il php''' dal file di configurazione che si trova in '''/etc/apache2/apache2.conf'''. Quindi attraverso un qualsiasi editor di testo, '''per comodità utilizziao gedit''', ma voi potete usare un qualsiasi altro editor come: nano, vi, vim... | Il procedimento di installazione diventa molto semplice se non si ha intenzione di compilare i pacchetti autonomamente (questo metodo non verrà trattato nell' ''how-to''), ma si decide di sfruttare quelli messi a disposizione nei [:Repository:repository] ufficiali. Personalmente ho installato solo una volta '''LAMP''' compilando da me i pacchetti ed è una scelta che sconsiglio a chi non è pratico. Come scritto sopra, la procedura è molto semplice e consiste nell'installazione di alcuni pacchetti essenziali che si può effettuare tramite ''apt-get'' o con il proprio gestore di pacchetti (''Synaptic'', ''adept''). |
Linea 17: | Linea 18: |
{{{sudo gedit /etc/apache2/apache2.conf}}} | I pacchetti in questione sono: ''apache2-mpm-prefork mysql-server libapache2-mod-php5 php5-mysql'' * ''apache2-mpm-prefork'': il webserver |
Linea 19: | Linea 22: |
Andiamo a modificare il file '''eliminando i due asterischi''' che precedono le seguenti righe di testo: | * ''mysql-server'':pacchetto riguardante mysql |
Linea 21: | Linea 24: |
''#AddType application/x-httpd-php .php''[[BR]] ''#AddType application/x-httpd-php-source .phps'' |
* ''libapache2-mod-php5'': modulo PHP per Apache |
Linea 24: | Linea 26: |
Quindi in: | * ''php5-mysql'': estensione MySQL per PHP |
Linea 26: | Linea 28: |
''AddType application/x-httpd-php .php''[[BR]] ''AddType application/x-httpd-php-source .phps'' |
Se non si riceve alcun errore di download o di configurazione passare direttamente alla [:ApachePHPMySQL#configurazione:configurazione]. Verificare però che ogni componente sia stato installato correttamente. |
Linea 29: | Linea 30: |
Abbiamo terminato con le modifiche, possiamo procedere all'installazione del php. | == Apache == |
Linea 31: | Linea 32: |
= PHP = ---- |
Apache dovrebbe già essere in esecuzione, per sicurezza riavviarlo: {{{ sudo /etc/init.d/apache2 restart }}} |
Linea 34: | Linea 37: |
Per la guida ero in dubbio se utilizzare la versione 4 o 5 del php, personalmente io preferisco la 5 perchè porta diverse novità che aiutano nella '''programmazione OOP ad oggetti'''. '''Per comodità lascerò una x al posto della versione, ma voi, ovviamente, sostituitela con il numero della versione scelta.''' Installiamo i pacchetti necessari, negli esempi utilizzerò apt-get ma potete utilizzare anche Synaptic, quindi dal terminale: |
Potrebbe verificarsi il seguente errore: {{{ apache2: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName }}} Non preoccuparsi, verrà risolto più avanti nel paragrafo [:ApachePHPMySQL#errori:errori] |
Linea 37: | Linea 43: |
{{{sudo apt-get install phpx libapache2-mod-phpx}}} | Controllare che in [http://localhost/apache2-default questo link] venga visualizzata la scritta «'''It Works!'''». Se fosse così, considerarsi soddisfatti e proseguire con la guida. |
Linea 39: | Linea 45: |
Terminata l'installazione facciamo '''ripartire Apache''' attraverso questo comando: | Ecco alcuni comandi principali di Apache, notare che vanno eseguiti sempre da '''root''' quindi preceduti sempre da [:Sudo:sudo]: ||<tablestyle="width: 50%" >'''/etc/init.d/apache2 start'''|| Avvia il demone ''Apache''|| ||'''/etc/init.d/apache2 restart'''|| Riavvia ''Apache''|| ||'''/etc/init.d/apache2 stop'''|| Ferma ''Apache''|| == PHP == |
Linea 41: | Linea 51: |
{{{sudo /etc/init.d/apache2 restart}}} | Per verificare il corretto funzionamento di '''PHP''' creare un file di prova nella nella propria '''Document``Root''', che di Default è `/var/www`. |
Linea 43: | Linea 53: |
'''Adesso dovreste essere in grado di vedere, tramite il vostro browser, le pagine in php'''. Per sicurezza facciamo il primo test e creiamo dal terminale una nuova pagina nella directory del web server: | Con l'[:EditorDiTesto:editor] di testo preferito e con i permessi [:Sudo:sudo] creare il file `/var/www/info.php` e inserirci all'interno la seguente riga: {{{ <?php phpinfo(); ?> }}} Salvare il file e recarsi all'indirizzo http://localhost/info.php . |
Linea 45: | Linea 59: |
{{{sudo gedit /var/www/testphp.php}}} | Dovrebbe essere visualizzata la classica pagina di informazioni di '''PHP'''. Se così non fosse assicurarsi di aver eseguito correttamente ogni step dell' ''how-to'', o controllare il paragrafo sugli [:ApachePHPMySQL#errori:errori]. == MySQL == MySQL viene installato con un ''utente fittizio root'' e un ''campo password vuoto''. Per verificare che funzioni digitare in un terminale il comando: {{{ sudo mysql }}} La risposta dovrebbe essere: {{{ Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 to server version: 5.0.22-Debian_0ubuntu6.06-log |
Linea 47: | Linea 70: |
Scriviamo questa riga e salviamo il file: | Type 'help;' or '\h' for help. Type '\c' to clear the buffer. |
Linea 49: | Linea 72: |
''<?php phpinfo(); ?>'' | mysql> }}} |
Linea 51: | Linea 75: |
Ricordo che la '''directory del web server è /var/www/''', e che per vederne il contenuto ci basterà aprire il nostro browser e mettere come indirizzo '''localhost''' http://localhost/ . Adesso dovrebbe uscirvi una pagina con scritto '''"Index of/"''' e di seguito un '''link che va proprio alla pagina che avete appena creato'''. Cliccate sul link e dovrebbe apparirvi una nuova pagina, di sfondo viola, all'interno della quale saranno presenti tutte le informazioni riguardo la vostra versione del php. In caso contrario provate a rieseguire la procedura e controllate se avete fatto errori o avete saltato qualche passaggio. | In tal caso l'installazione di '''LAMP''' è stata eseguita con successo. [[Anchor(configurazione)]] = Configurazione = |
Linea 53: | Linea 79: |
= MySQL = ---- |
La configurazione di un ambiente '''LAMP''' è un argomento molto ampio, questa guida si limiterà a trattare le domande più frequenti. |
Linea 56: | Linea 81: |
'''Anche per il database MySQL la procedura è semplice''' e sta nell'installare un paio di pacchetti e in seguito riavviare Apache. Andiamo a vedere nello specifico: | == Apache == |
Linea 58: | Linea 83: |
{{{sudo apt-get install libapache2-mod-auth-mysql phpx-mysql}}} | Per qualsiasi modifica sul ''webserver'' di Apache i file di configurazione li trovate nella directory `/etc/apache2`. [[Anchor(documentroot)]] Potrebbe essere utile cambiare la Document``Root. Per far ciò editare alcuni file di configurazione del ''webserver'': `/etc/apache2/sites-available/default` e `/etc/apache2/apache2.conf` |
Linea 60: | Linea 87: |
Riavviamo Apache: | Decommentare le seguenti righe e/o sostituire al posto dell'asterisco il proprio nome utente: |
Linea 62: | Linea 89: |
{{{sudo /etc/init.d/apache2 restart}}} | {{{ #<Directory /home/*/public_html> # AllowOverride FileInfo AuthConfig Limit # Options Indexes SymLinksIfOwnerMatch IncludesNoExec #</Directory> }}} Creare nella propria '''Home''' la directory `public_html` e riavviare '''Apache''': {{{ mkdir ~/public_html && sudo /etc/init.d/apache2 restart }}} Inserire dentro la cartella il file di prova php e ricontrollare tutto su http://localhost/ . == PHP == Per qualsiasi modifica al '''PHP''' il file di configurazione ''php.ini'' si trova nella cartella `/etc/php5/apache2`. Potrebbe essere utile installare librerie supplementari di '''PHP'''. Riconoscerle tra i pacchetti dei [:Repository:repository] ufficiali è molto semplice: i loro nomi cominciano per ''php5''. Un esempio lo è la libreria per le immagini ''gd'': {{{ sudp apt-get install php5-gd }}} == MySQL == Per la gestione del database si può sempre lavorare da terminale, ma il consiglio è di installare ''phpmyadmin'', un'interfaccia grafica per una più facile gestione. Potrebbe essere utile cambiare la password a '''MySQL''', in tal caso digitare da terminale {{{ sudo mysql }}} E successivamente digitare: {{{ mysqladmin -u root password passwordpersonale }}} Con la propria ''passwordpersonale''. [[Anchor(errori)]] = Errori e problematiche comuni = Questa sezione della guida vuole raccogliere tutti gli errori e le problematiche comuni, come da titolo, con le relative soluzioni. Chiunque può aggiungere errori ulteriori in cui è incorso durante l'installazione di '''LAMP''' inserendo anche l'eventuale la soluzione agli stessi. == Errore all'avvio di Apache: "Could not determine... == Se durante l'avvio di '''Apache''' si verificasse il seguente errore: {{{ apache2: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName }}} Modificare il file di configurazione di '''Apache''' con l'[:EditorDiTesto:editor] di testo preferito e con i permessi [:Sudo:sudo] il file `/etc/apache2/apache2.conf` aggiungendo o modificando, a seconda se è presente o non, questa riga: {{{ ServerName localhost }}} == Apache configurato ma non si riescono a visualizzare i file in /var/www == Un altro problema molto comune è legato ''all'impossibilità di vedere i file'' perché la Document``Root di default è situata in una cartella senza permessi in lettura e scrittura: `/var/www/`. Una soluzione potrebbe essere quella di abilitare i permessi tramite il comando [:PermessiFile:chmod] oppure cambiare la Document``Root come è stato spiegato in [:ApachePHPMySQL#documentroot:questo] paragrafo. Se si vuole cambiare i permessi della cartella, digitare in un terminale il comando: {{{ sudo chmod u=rwx /var/www }}} == Problemi di porte tra Apache e Skype == Sembra che di default '''Apache''' utilizzi la stessa porta di '''Skype''' per cui si potrebbe andare in contro ad alcuni errori. Questo problema si risolve editando con l'[:EditorDiTesto:editor] di testo preferito e con i permessi [:Sudo:sudo] il file `/etc/apache2/ports.conf` e modificando il numero della porta usata da '''Apache'''. = Ulteriori Risorse = * [http://download.nuxwin.com/tutoriels/ubuntu/dapper-drake/lamp-x.2.5.5.pdf Guida in pdf] - (fr) * [http://www.ubuntuforums.org/showthread.php?t=223410 Come installare XAMPP] - (en) * Per qualsiasi problema esiste [http://www.google.it Google] ##= Commenti = ## ##Ciao, sul wiki esistono già le guide per apache, php e mysql, verifica che questa pagina non ripeta le stesse cose: ## ## * Guida apache e php => WebServer ## * Guida mysql => WebServer e ServerDatabase ## ##BlackDesert ## ##Questa guida non serve a realizzare un webserver!!! Infatti serve solo a creare l'ambiente di sviluppo LAMP per i webmaster. Non si installa nemmeno apache2 per intero... ## ##P3E2 |
Linea 65: | Linea 173: |
La guida non è ancora terminata ma al suo interno c'è quanto basta per l'installazione dei tre componenti. (P3E2) |
CategoryServer CategoryDaCancellare |
IndiceBRTableOfContents(1) |
Introduzione
Questo how-to è frutto della mia esperienza personale nell'installazione di LAMP su Ubuntu, testata anche su diverse macchine; tuttavia è possibile che in alcuni casi si possa incorrere in errori di vario genere. Nell' how-to dedicherò alcune righe alle [:ApachePHPMySQL#errori:problematiche] più comuni e alle relative soluzioni, ma vi invito a postare sul [http://forum.ubuntu-it.org/ forum] nel caso doveste andare in contro ad imprevisti durante l'installazione o la configurazione dei vari applicativi.
Immagine(Icone/Piccole/warning.png,,left) BRAttenzione: Questa guida vuole aiutare l'utente nell'installazione di una piattaforma di sviluppo LAMP, anzi UAMP (Ubuntu, Apache, PHP, MySQL) funzionante, e non nella configurazione di un webserver !
Installazione
Il procedimento di installazione diventa molto semplice se non si ha intenzione di compilare i pacchetti autonomamente (questo metodo non verrà trattato nell' how-to), ma si decide di sfruttare quelli messi a disposizione nei [:Repository:repository] ufficiali. Personalmente ho installato solo una volta LAMP compilando da me i pacchetti ed è una scelta che sconsiglio a chi non è pratico. Come scritto sopra, la procedura è molto semplice e consiste nell'installazione di alcuni pacchetti essenziali che si può effettuare tramite apt-get o con il proprio gestore di pacchetti (Synaptic, adept).
I pacchetti in questione sono: apache2-mpm-prefork mysql-server libapache2-mod-php5 php5-mysql
apache2-mpm-prefork: il webserver
mysql-server:pacchetto riguardante mysql
libapache2-mod-php5: modulo PHP per Apache
php5-mysql: estensione MySQL per PHP
Se non si riceve alcun errore di download o di configurazione passare direttamente alla [:ApachePHPMySQL#configurazione:configurazione]. Verificare però che ogni componente sia stato installato correttamente.
Apache
Apache dovrebbe già essere in esecuzione, per sicurezza riavviarlo:
sudo /etc/init.d/apache2 restart
Potrebbe verificarsi il seguente errore:
apache2: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Non preoccuparsi, verrà risolto più avanti nel paragrafo [:ApachePHPMySQL#errori:errori]
Controllare che in [http://localhost/apache2-default questo link] venga visualizzata la scritta «It Works!». Se fosse così, considerarsi soddisfatti e proseguire con la guida.
Ecco alcuni comandi principali di Apache, notare che vanno eseguiti sempre da root quindi preceduti sempre da [:Sudo:sudo]:
/etc/init.d/apache2 start |
Avvia il demone Apache |
/etc/init.d/apache2 restart |
Riavvia Apache |
/etc/init.d/apache2 stop |
Ferma Apache |
PHP
Per verificare il corretto funzionamento di PHP creare un file di prova nella nella propria DocumentRoot, che di Default è /var/www.
Con l'[:EditorDiTesto:editor] di testo preferito e con i permessi [:Sudo:sudo] creare il file /var/www/info.php e inserirci all'interno la seguente riga:
<?php phpinfo(); ?>
Salvare il file e recarsi all'indirizzo http://localhost/info.php .
Dovrebbe essere visualizzata la classica pagina di informazioni di PHP. Se così non fosse assicurarsi di aver eseguito correttamente ogni step dell' how-to, o controllare il paragrafo sugli [:ApachePHPMySQL#errori:errori].
MySQL
MySQL viene installato con un utente fittizio root e un campo password vuoto. Per verificare che funzioni digitare in un terminale il comando:
sudo mysql
La risposta dovrebbe essere:
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 to server version: 5.0.22-Debian_0ubuntu6.06-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>
In tal caso l'installazione di LAMP è stata eseguita con successo. Anchor(configurazione)
Configurazione
La configurazione di un ambiente LAMP è un argomento molto ampio, questa guida si limiterà a trattare le domande più frequenti.
Apache
Per qualsiasi modifica sul webserver di Apache i file di configurazione li trovate nella directory /etc/apache2. Anchor(documentroot) Potrebbe essere utile cambiare la DocumentRoot. Per far ciò editare alcuni file di configurazione del webserver: /etc/apache2/sites-available/default e /etc/apache2/apache2.conf
Decommentare le seguenti righe e/o sostituire al posto dell'asterisco il proprio nome utente:
#<Directory /home/*/public_html> # AllowOverride FileInfo AuthConfig Limit # Options Indexes SymLinksIfOwnerMatch IncludesNoExec #</Directory>
Creare nella propria Home la directory public_html e riavviare Apache:
mkdir ~/public_html && sudo /etc/init.d/apache2 restart
Inserire dentro la cartella il file di prova php e ricontrollare tutto su http://localhost/ .
PHP
Per qualsiasi modifica al PHP il file di configurazione php.ini si trova nella cartella /etc/php5/apache2.
Potrebbe essere utile installare librerie supplementari di PHP. Riconoscerle tra i pacchetti dei [:Repository:repository] ufficiali è molto semplice: i loro nomi cominciano per php5. Un esempio lo è la libreria per le immagini gd:
sudp apt-get install php5-gd
MySQL
Per la gestione del database si può sempre lavorare da terminale, ma il consiglio è di installare phpmyadmin, un'interfaccia grafica per una più facile gestione.
Potrebbe essere utile cambiare la password a MySQL, in tal caso digitare da terminale
sudo mysql
E successivamente digitare:
mysqladmin -u root password passwordpersonale
Con la propria passwordpersonale. Anchor(errori)
Errori e problematiche comuni
Questa sezione della guida vuole raccogliere tutti gli errori e le problematiche comuni, come da titolo, con le relative soluzioni. Chiunque può aggiungere errori ulteriori in cui è incorso durante l'installazione di LAMP inserendo anche l'eventuale la soluzione agli stessi.
Errore all'avvio di Apache: "Could not determine...
Se durante l'avvio di Apache si verificasse il seguente errore:
apache2: Could not determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Modificare il file di configurazione di Apache con l'[:EditorDiTesto:editor] di testo preferito e con i permessi [:Sudo:sudo] il file /etc/apache2/apache2.conf aggiungendo o modificando, a seconda se è presente o non, questa riga:
ServerName localhost
Apache configurato ma non si riescono a visualizzare i file in /var/www
Un altro problema molto comune è legato all'impossibilità di vedere i file perché la DocumentRoot di default è situata in una cartella senza permessi in lettura e scrittura: /var/www/.
Una soluzione potrebbe essere quella di abilitare i permessi tramite il comando [:PermessiFile:chmod] oppure cambiare la DocumentRoot come è stato spiegato in [:ApachePHPMySQL#documentroot:questo] paragrafo. Se si vuole cambiare i permessi della cartella, digitare in un terminale il comando:
sudo chmod u=rwx /var/www
Problemi di porte tra Apache e Skype
Sembra che di default Apache utilizzi la stessa porta di Skype per cui si potrebbe andare in contro ad alcuni errori. Questo problema si risolve editando con l'[:EditorDiTesto:editor] di testo preferito e con i permessi [:Sudo:sudo] il file /etc/apache2/ports.conf e modificando il numero della porta usata da Apache.
Ulteriori Risorse
[http://download.nuxwin.com/tutoriels/ubuntu/dapper-drake/lamp-x.2.5.5.pdf Guida in pdf] - (fr)
[http://www.ubuntuforums.org/showthread.php?t=223410 Come installare XAMPP] - (en)
Per qualsiasi problema esiste [http://www.google.it Google]