GNU/Linux >> Linux Esercitazione >  >> Fedora

Installazione di Apache2 con PHP5 e supporto MySQL su Fedora 20 (LAMP)

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 e aggiungendo la riga Require all allowed):

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/:

  • Apache:http://httpd.apache.org/
  • PHP:http://www.php.net/
  • MySQL:http://www.mysql.com/
  • Fedora:http://fedoraproject.org/
  • phpMyAdmin:http://www.phpmyadmin.net/

Fedora
  1. Installazione di Apache2 con supporto PHP5 e MySQL su Ubuntu 14.04LTS (LAMP)

  2. Installazione di Apache2 con PHP5 e supporto MySQL su OpenSUSE 13.1 (LAMP)

  3. Come installare Apache2 con PHP5 e MySQL su Fedora 16 (LAMP)

  4. Come installare Apache2 con PHP5 e MySQL su Fedora 15 (LAMP)

  5. Installa Apache2 con PHP5 e MySQL su Fedora 21 (LAMP)

Installazione di Apache2 con PHP5 e supporto MySQL su Debian Squeeze (LAMP)

Installazione di Apache2 con PHP5 e supporto MySQL su Debian Wheezy

Installazione di Apache2 con PHP5 e supporto MySQL su CentOS 6.2 (LAMP)

Installazione di Apache2 con PHP5 e supporto MySQL su CentOS 6.3 (LAMP)

Installazione di Apache2 con PHP5 e supporto MySQL su CentOS 6.4 (LAMP)

Installazione di Nginx con PHP5 (e PHP-FPM) e supporto MySQL su Fedora 19