Server Setup · 5 min read · Nov 29, 2025

Installa Apache, PHP E MySQL Su CentOS 7 (LAMP)

Questo tutorial mostra come puoi installare un server web Apache2 su un server CentOS 7.0 con supporto PHP5 (mod_php) e supporto MySQL. LAMP è l’acronimo 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’ultima versione di 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 dell’originale sviluppatore di MySQL 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

Poi 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 di MySQL:

mysql_secure_installation

[root@server1 ~]# mysql_secure_installation

/usr/bin/mysql_secure_installation: line 379: find_mysql_client: command not found

NOTA: È CONSIGLIATO ESEGUIRE TUTTE LE PARTI DI QUESTO SCRIPT PER TUTTI I SERVER MariaDB IN USO PRODUZIONE!  PER FAVORE LEGGI ATTENTAMENTE OGNI PASSO!

Per accedere a MariaDB per metterlo in sicurezza, avremo bisogno della password attuale per l’utente root.  Se hai appena installato MariaDB, e

non hai ancora impostato la password root, la password sarà vuota,

quindi dovresti semplicemente premere invio qui.

Inserisci la password attuale per root (invio per nessuna):

<–INVIO

OK, password utilizzata con successo, procedendo…

Impostare la password root assicura che nessuno possa accedere all’utente root di MariaDB senza la corretta autorizzazione.

Impostare la password root? [Y/n]

Nuova password:

<–tuapasswordmariadb

Reinserisci la nuova password:

<–tuapasswordmariadb

Password aggiornata con successo!

Ricaricamento delle tabelle dei privilegi..

… Successo!

Per impostazione predefinita, un’installazione di MariaDB ha un utente anonimo, che consente a chiunque di accedere a MariaDB senza dover avere un account utente creato per

loro.  Questo è destinato solo per testare e per rendere l’installazione

un po’ più fluida.  Dovresti rimuoverli prima di passare a un

ambiente di produzione.

Rimuovere gli utenti anonimi? [Y/n]

<–INVIO

… Successo!

Normalmente, root dovrebbe essere autorizzato a connettersi solo da ‘localhost’.  Questo

assicura che qualcuno non possa indovinare la password root dalla rete.

Negare l’accesso remoto a root? [Y/n]

<–INVIO

… Successo!

Per impostazione predefinita, MariaDB viene fornito con un database chiamato ‘test’ a cui chiunque può

accedere.  Questo è anche destinato solo per testare e dovrebbe essere rimosso

prima di passare a un ambiente di produzione.

Rimuovere il database di test e l’accesso ad esso? [Y/n]

<–INVIO

  • Eliminazione del database di test…

… Successo!

  • Rimozione dei privilegi sul database di test…

… Successo!

Ricaricare le tabelle dei privilegi garantirà che tutte le modifiche apportate finora

entreranno in vigore immediatamente.

Ricaricare le tabelle dei privilegi ora? [Y/n]

<–INVIO

… Successo!

Pulizia…

Tutto fatto!  Se hai completato tutti i passaggi sopra, la tua installazione di MariaDB

ora dovrebbe essere sicura.

Grazie per aver utilizzato MariaDB!

[root@server1 ~]#

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

[root@server1 ~]# yum install httpd

Caricamento dei plugin: fastestmirror, langpacks

Caricamento delle velocità dei mirror dal file host cache

  • base: ftp.plusline.de

  • extras: mirror.23media.de

  • updates: mirror.23media.de

Il pacchetto httpd-2.4.6-17.el7.centos.1.x86_64 è già installato e aggiornato

Niente da fare

[root@server1 ~]#

Per impostazione predefinita, apache sarà installato, se non lo è, installalo 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 si utilizza Firewall-cmd, quindi lo personalizzerò per consentire l’accesso esterno alla porta 80 (http) e 443 (https).

firebase-cmd --permanent --zone=public --add-service=http   
firebase-cmd --permanent --zone=public --add-service=https  
firebase-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

Dobbiamo riavviare Apache dopo:

systemctl restart httpd.service

5 Testare PHP5 / Ottenere Dettagli Sulla Tua Installazione 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

Ora chiamiamo quel file in un browser (ad es. http://192.168.0.100/info.php):

Come puoi vedere, PHP5 sta funzionando, e sta funzionando attraverso il gestore Apache 2.0, come mostrato nella riga Server API. Se scorri ulteriormente verso il basso, vedrai tutti i moduli che sono già abilitati in PHP5. MySQL non è elencato lì, il che significa che non abbiamo ancora il supporto 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 anche alcuni altri moduli PHP5 poiché potresti averne bisogno per le tue applicazioni. Puoi cercare i moduli PHP5 disponibili in questo modo:

yum search php

Scegli quelli di cui hai bisogno e installali in questo modo:

yum -y install php-mysql

Nel passaggio successivo installerò alcuni moduli PHP comuni richiesti da 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 nella sezione moduli. Dovresti ora trovare molti nuovi moduli come curl ecc. lì:

7 Installazione di phpMyAdmin

phpMyAdmin è un’interfaccia web attraverso la quale puoi gestire i tuoi database MySQL.
phpMyAdmin può ora 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 sezione ):

vi /etc/httpd/conf.d/phpMyAdmin.conf
[...]  
Alias /phpMyAdmin /usr/share/phpMyAdmin
Alias /phpmyadmin /usr/share/phpMyAdmin

#
#   
#     # Apache 2.4
#     
#       Require ip 127.0.0.1
#       Require ip ::1
#     
#   
#   
#     # Apache 2.2
#     Order Deny,Allow
#     Deny from All
#     Allow from 127.0.0.1
#     Allow from ::1
#   
#



        Options none
        AllowOverride Limit
        Require all granted
  
  
[...] 

Successivamente cambiamo l’autenticazione in phpMyAdmin da cookie a http:

vi /etc/phpMyAdmin/config.inc.php
[...]
$cfg['Servers'][$i]['auth_type']     = 'http';    // Metodo di autenticazione (config, http o basato su cookie)?
[...]

Riavvia Apache:

systemctl restart  httpd.service

Dopo, puoi accedere a phpMyAdmin all’indirizzo http://192.168.0.100/phpmyadmin/:

8 Link

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/

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.