LAMP è l'abbreviazione di L inux, A pache, M ySQL, P HP. Questo tutorial mostra come installare un server web Apache2 su un server Fedora 20 con supporto PHP5 (mod_php) e supporto MySQL.
Non garantisco che questo funzionerà per te!
1 Nota preliminare
In questo tutorial utilizzo l'hostname server1.example.com con l'indirizzo IP 192.168.0.100. Queste impostazioni potrebbero differire per te, quindi devi sostituirle dove appropriato.
2 Installazione di MySQL/MariaDB 5
Per installare MySQL, facciamo questo:
yum install mysql mysql-server
Quindi creiamo i collegamenti di avvio del sistema per MySQL (in modo che MySQL si avvii automaticamente ogni volta che il sistema si avvia) e avviamo il server MySQL:
systemctl enable mysqld.service
Nota:se ricevi l'errore in questo modo
Failed to issue method call: No such file or directory
Quindi usa
systemctl enable mariadb.service
Avvia ulteriormente il servizio di mysql
systemctl start mysqld.service
Corri
mysql_secure_installation
per impostare una password per l'utente root (altrimenti chiunque può accedere al tuo database MySQL!):
[[email protected] ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found
NOTA:L'ESECUZIONE DI TUTTE LE PARTI DI QUESTO SCRIPT È RACCOMANDATA PER TUTTI MariaDB
SERVER IN PRODUZIONE UTILIZZATI! PER FAVORE, LEGGERE ATTENTAMENTE OGNI PASSAGGIO!
Per accedere a MariaDB per proteggerlo, avremo necessità della password
corrente per l'utente root. Se hai appena installato MariaDB, e
non hai impostato la password root, la password sarà vuota,
quindi dovresti premere invio qui.
Entra password corrente per la radice (inserire per nessuno): <-- INVIO
OK, password utilizzata con successo, andando avanti...
L'impostazione della password di radice garantisce che nessuno possa accedere a MariaDB
utente root senza l'autorizzazione appropriata.
Impostare la password root? [S/n] <-- ENTER
Nuova password: <-- yourrootsqlpassword
Reinserire nuova password: <-- yourrootsqlpassword
Password aggiornata con successo!
Ricaricamento tabelle privilegi. .
... Successo!
Per impostazione predefinita, un'installazione MariaDB ha un utente anonimo, consentendo a chiunque
di accedere a MariaDB senza deve avere un account utente creato per
loro. Questo è destinato solo a test e a rendere l'installazione
andare un po' più agevole. Dovresti rimuoverli prima di trasferirti in un ambiente di produzione.
Rimuovere utenti anonimi? [S/n] <-- ENTER
... Successo!
Normalmente, a root dovrebbe essere consentito di connettersi da 'localhost'. Questo
garantisce che qualcuno non riesca a indovinare la password root dalla rete.
Disconsentire l'accesso root da remoto? [S/n] <-- ENTER
... Successo!
Per impostazione predefinita, MariaDB viene con un database denominato 'test' a cui tutti possono
accedere. Questo è anche destinato solo a test, e dovrebbe essere rimosso
prima di trasferirsi in un ambiente di produzione.
Rimuovere database di test e accedere ad esso? [S/n] <-- ENTER
- Dropping database di test...
... Successo!
- Rimozione privilegi sul database di test...
... Successo !
Ricaricare le tabelle di privilegi garantirà che tutte le modifiche apportate finora
diventeranno immediatamente effettive.
Ricaricare le tabelle privilegi adesso? [S/n] <-- ENTER
... Successo!
Pulizia ...
Fatto! Se hai completato tutti i passaggi precedenti, l'installazione di MariaDB
dovrebbe essere protetta.
Grazie per utilizzare MariaDB!
[[email protected] ~]#
3 Installazione di Apache2
Apache2 è disponibile come pacchetto Fedora, quindi possiamo installarlo in questo modo:
yum install httpd
Ora configura il tuo sistema per avviare Apache all'avvio...
systemctl enable httpd.service
... e avvia Apache:
systemctl start httpd.service
Ora indirizza il tuo browser a http://192.168.0.100 e dovresti vedere la pagina segnaposto di Apache2:
La radice del documento predefinita di Apache è /var/www/html su Fedora e il file di configurazione è /etc/httpd/conf/httpd.conf. Ulteriori configurazioni sono memorizzate nella directory /etc/httpd/conf.d/.
4 Installazione di PHP5
Possiamo installare PHP5 e il modulo Apache PHP5 come segue:
yum install php
In seguito dobbiamo riavviare Apache:
systemctl restart httpd.service
5 Testare PHP5 / Ottenere dettagli sull'installazione di PHP5
La radice del documento del sito Web predefinito è /var/www/html. Ora creeremo un piccolo file PHP (info.php) in quella directory e lo chiameremo in un browser. Il file mostrerà molti dettagli utili sulla nostra installazione di PHP, come la versione di PHP installata.
vi /var/www/html/info.php
<?php phpinfo(); ?> |
Ora chiamiamo quel file in un browser (es. http://192.168.0.100/info.php):
Come vedi, PHP5 funziona e funziona tramite Apache 2.0 Handler, come mostrato nella riga Server API. Se scorri più in basso, vedrai tutti i moduli che sono già abilitati in PHP5. MySQL non è elencato lì, il che significa che non abbiamo ancora il supporto per MySQL in PHP5.
6 Ottenere supporto MySQL in PHP5
Per ottenere il supporto MySQL in PHP, possiamo installare il pacchetto php-mysql. È una buona idea installare alcuni altri moduli PHP5 e potresti averne bisogno per le tue applicazioni. Puoi cercare i moduli PHP5 disponibili in questo modo:
yum search php
Scegli quelli che ti servono e installali in questo modo:
yum install php-mysqlnd php-mssql php-opcache
Ora riavvia Apache2:
systemctl restart httpd.service
Ora ricarica http://192.168.0.100/info.php nel tuo browser e scorri di nuovo verso il basso fino alla sezione dei moduli. Ora dovresti trovare molti nuovi moduli lì, incluso il modulo MySQL:
7 phpMyAdmin
phpMyAdmin è un'interfaccia web attraverso la quale puoi gestire i tuoi database MySQL.
phpMyAdmin può essere installato come segue:
yum install phpmyadmin
Ora configuriamo phpMyAdmin. Modifichiamo la configurazione di Apache in modo che phpMyAdmin consenta connessioni non solo da localhost (commentando tutto nella stanza
vi /etc/httpd/conf.d/phpMyAdmin.conf
# phpMyAdmin - Web based MySQL browser written in php # # Allows only localhost by default # # But allowing phpMyAdmin to anyone other than localhost should be considered # dangerous unless properly secured by SSL Alias /phpMyAdmin /usr/share/phpMyAdmin Alias /phpmyadmin /usr/share/phpMyAdmin <Directory /usr/share/phpMyAdmin/> # <IfModule mod_authz_core.c> # # Apache 2.4 # <RequireAny> # Require ip 127.0.0.1 # Require ip ::1 # </RequireAny> # </IfModule> # <IfModule !mod_authz_core.c> # # Apache 2.2 # Order Deny,Allow # Deny from All # Allow from 127.0.0.1 # Allow from ::1 # </IfModule> Require all granted </Directory> <Directory /usr/share/phpMyAdmin/setup/> <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require ip 127.0.0.1 Require ip ::1 </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory> # These directories do not require access over HTTP - taken from the original # phpMyAdmin upstream tarball # <Directory /usr/share/phpMyAdmin/libraries/> Order Deny,Allow Deny from All Allow from None </Directory> <Directory /usr/share/phpMyAdmin/setup/lib/> Order Deny,Allow Deny from All Allow from None </Directory> <Directory /usr/share/phpMyAdmin/setup/frames/> Order Deny,Allow Deny from All Allow from None </Directory> # This configuration prevents mod_security at phpMyAdmin directories from # filtering SQL etc. This may break your mod_security implementation. # #<IfModule mod_security.c> # <Directory /usr/share/phpMyAdmin/> # SecRuleInheritance Off # </Directory> #</IfModule> |
Riavvia Apache:
systemctl restart httpd.service
Successivamente, puoi accedere a phpMyAdmin da http://192.168.0.100/phpmyadmin/:
8 link
- Apache:http://httpd.apache.org/
- PHP:http://www.php.net/
- MySQL:http://www.mysql.com/
- Fedora:http://fedoraproject.org/
- phpMyAdmin:http://www.phpmyadmin.net/