GNU/Linux >> Linux Esercitazione >  >> Cent OS

Installa Apache, PHP e MySQL su CentOS 7 (LAMP)

Questo tutorial mostra come installare un server web Apache2 su un server CentOS 7.0 con supporto PHP5 (mod_php) e supporto MySQL. LAMP è l'abbreviazione di L inux, A pache, M ySQL, P HP.

1 Nota preliminare

In questo tutorial, utilizzo il nome host server1.example.com con l'indirizzo IP 192.168.0.100. Queste impostazioni potrebbero differire per te, quindi devi sostituirle dove appropriato.

Aggiungerò il repository EPEL qui per installare l'ultimo phpMyAdmin come segue:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*
yum -y install epel-release

2 Installazione di MySQL/MariaDB

MariaDB è un fork di MySQL dello sviluppatore MySQL originale Monty Widenius. MariaDB è compatibile con MySQL e ho scelto di utilizzare MariaDB qui invece di MySQL. Per installare MySQL, installiamo MariaDB in questo modo:

yum -y install mariadb-server mariadb

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 start mariadb.service
systemctl enable mariadb.service

Imposta le password per l'account root MySQL:

mysql_secure_installation
[[email protected] ~]# mysql_secure_installation
/usr/bin/mysql_secure_installation:line 379:find_mysql_client:comando non trovato

NOTA:L'ESECUZIONE DI TUTTE LE PARTI DI QUESTO SCRIPT È CONSIGLIATA PER TUTTI MariaDB
      SERVER IN USO DI PRODUZIONE! SI PREGA DI LEGGERE ATTENTAMENTE OGNI PASSO!

Per poter accedere a MariaDB per proteggerlo, avremo bisogno della
password corrente per l'utente root. Se hai appena installato MariaDB e
non hai ancora impostato la password di root, la password sarà vuota,
quindi dovresti semplicemente premere invio qui.

Entra password corrente per root (inserisci per none):<--ENTER
OK, password utilizzata con successo, vado avanti...

L'impostazione della password di root garantisce che nessuno possa accedere all'utente root di MariaDB
senza la corretta autorizzazione.

Impostare la password di root? [S/n]
Nuova password:<--yourmariadbpassword
Reinserire la nuova password:<--yourmariadbpassword
Password aggiornata correttamente!
Ricaricamento delle tabelle dei privilegi..
 ... Operazione riuscita!


Per impostazione predefinita, un'installazione di MariaDB ha un utente anonimo, che consente chiunque
per accedere a MariaDB senza dover creare un account utente per
loro. Questo è inteso solo per il test e per rendere l'installazione
un po' più agevole. È necessario rimuoverli prima di passare a un
ambiente di produzione.

Rimuovere utenti anonimi? [S/n] <--INVIO
 ... Successo!

Normalmente, root dovrebbe essere autorizzato a connettersi solo da 'localhost'. Questo
garantisce che qualcuno non possa indovinare la password di root dalla rete.

Disconsentire l'accesso root in remoto? [S/n] <--INVIO
 ... Successo!

Per impostazione predefinita, MariaDB viene fornito con un database denominato 'test' a cui chiunque può
accedere. Anche questo è inteso solo per il test e deve essere rimosso
prima di passare a un ambiente di produzione.

Rimuovere il database di test e accedervi? [S/n] <--INVIO
 - Eliminazione del database di test...
 ... Operazione riuscita!
 - Rimozione dei privilegi sul database di prova...
 ... Operazione riuscita!

Il ricaricamento delle tabelle dei privilegi garantirà che tutte le modifiche apportate finora
diventeranno effettive immediatamente.

Ricaricare le tabelle dei privilegi ora? [S/n] <--INVIO
 ... Successo!

Pulizia...

Fatto! Se hai completato tutti i passaggi precedenti, l'installazione di MariaDB
ora dovrebbe essere sicura.

Grazie per aver utilizzato MariaDB!
[[email protected] ~]#

3 Installazione di Apache2

CentOS 7 viene fornito con apache 2.4. Apache2 è direttamente disponibile come pacchetto CentOS 7.0, quindi possiamo installarlo in questo modo:

yum -y install httpd
[[email protected] ~]# yum install httpd
Plugin caricati:fastmirror, langpacks
Caricamento delle velocità mirror dal file host memorizzato nella cache
 * base:ftp.plusline.de
 * extra:mirror.23media.de
 * aggiornamenti:mirror.23media.de
Pacchetto httpd-2.4.6-17.el7.centos.1.x86_64 già installato e ultima versione
Niente da fare
[[email protetta] ~]#

Per impostazione predefinita verrà installato Apache, in caso contrario installarlo come mostrato sopra

Ora configura il tuo sistema per avviare Apache all'avvio...

systemctl start httpd.service
systemctl enable httpd.service

In CentOS 7.0 utilizza Firewall-cmd, quindi lo personalizzerò per consentire l'accesso esterno alla porta 80 (http) e 443 (https).

firewall-cmd --permanent --zone=public --add-service=http 
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload

Ora indirizza il tuo browser a http://192.168.0.100 e dovresti vedere la pagina segnaposto di Apache2:

4 Installazione di PHP5

Possiamo installare PHP5 e il modulo Apache PHP5 come segue:

yum -y 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 -y install php-mysql

Nella fase successiva installerò alcuni moduli PHP comuni richiesti dai sistemi CMS come Wordpress, Joomla e Drupal:

yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel

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 come curl ecc.:

7 installazione di phpMyAdmin

phpMyAdmin è un'interfaccia web attraverso la quale puoi gestire i tuoi database MySQL.
phpMyAdmin ora può essere installato come segue:

yum install phpMyAdmin

Ora configuriamo phpMyAdmin. Cambiamo la configurazione di Apache in modo che phpMyAdmin consenta connessioni non solo da localhost (commentando la stanza ):

vi /etc/httpd/conf.d/phpMyAdmin.conf
[...]
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> #</Directory> <Directory /usr/share/phpMyAdmin/> Options none AllowOverride Limit Require all granted </Directory>

[...]

Quindi cambiamo l'autenticazione in phpMyAdmin da cookie a http:

vi /etc/phpMyAdmin/config.inc.php
[...]
$cfg['Servers'][$i]['auth_type']     = 'http';    // Authentication method (config, http or cookie based)?
[...]

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/
    CentOS:http://www.centos.org/
    phpMyAdmin:http://www.phpmyadmin.net/


Cent OS
  1. Come installare Apache, MySQL, PHP (LAMP) su CentOS/RHEL 7

  2. Come installare Apache e PHP (stack LAMP) su Rocky Linux/Centos 8

  3. Installa MariaDB su CentOS 6.4

  4. Come installare LAMP (Linux Apache MySQL e PHP) su CentOS 6 con phpMyAdmin e cache APC

  5. Installa Zenario con Apache, PHP e MariaDB su CentOS 7

Come installare Apache, MySQL e PHP (LAMP) su CentOS 8

Come installare LAMP (Linux Apache, MariaDB, PHP) su CentOS 7

Come installare LAMP (Apache, MariaDB, PHP) su un Cloud Server CentOS 7.2

Come installare uno stack LAMP (Apache, MariaDB, PHP) su CentOS 7

Come installare LAMP su Ubuntu 15.10 (Linux, Apache, MySQL e PHP)

Come installare LAMP su Fedora 23 (Linux, Apache, MySQL e PHP)