Ti mostreremo come installare LAMP su CentOS 7. LAMP è in realtà l'acronimo di uno stack di soluzioni di servizi Web composto da Linux, Apache HTTP Server, i motori di database MySQL o MariaDB e il linguaggio di programmazione PHP, Perl o Python. Tutti i componenti sono software gratuiti e open source e la combinazione è adatta per la creazione di pagine Web dinamiche.
Requisiti?
Stiamo utilizzando il nostro piano di hosting VPS SSD 1 per questa configurazione, che dovrebbe essere più che sufficiente per eseguire LAMP e ospitare più siti Web dinamici utilizzando le direttive dell'host virtuale.
1. Aggiorna il sistema
Come sempre, assicurati di avere CentOS 7 VPS è completamente aggiornato e ti trovi in una screen
sessione utilizzando i comandi seguenti:
## screen -U -S lamp-centos7 ## yum update
2. Installa MariaDB
MariaDB è il server di database predefinito in CentOS 7, quindi vai avanti e installalo con yum
utilizzando il seguente comando:
## yum install mariadb mariadb-server mysql
Una volta installato, aggiungi bind-address = 127.0.0.1
a /etc/my.cnf.d/server.cnf
per associare MariaDB solo a localhost:
## vim /etc/my.cnf.d/server.cnf [mysqld] #log-bin=mysql-bin #binlog_format=mixed bind-address = 127.0.0.1
3. Riavvia e configura MariaDB
Riavvia il server del database MariaDB e abilitalo all'avvio all'avvio del sistema utilizzando:
## systemctl restart mariadb ## systemctl status mariadb ## systemctl enable mariadb
4. Esegui lo script di post-installazione MySQL
Infine, puoi eseguire mysql_secure_installation
script post-installazione per completare la configurazione di MariaDB. Ad esempio:
## mysql_secure_installation Enter current password for root (enter for none): ENTER Set root password? [Y/n] Y Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
5. Installa Apache
OK finora tutto bene. Quindi, procedi con l'installazione di Apache, OpenSSL e mod_ssl utilizzando yum
come in:
## yum install httpd openssl mod_ssl
6. Riavvia e configura Apache
Riavvia Apache e aggiungilo per l'avvio automatico all'avvio del tuo sistema utilizzando:
## systemctl restart httpd ## systemctl status httpd ## systemctl enable httpd
Testare la configurazione aprendo, ad esempio, http://YOUR_SERVER_IP/ nel tuo browser preferito. Dovresti vedere la pagina predefinita di Apache, ad esempio:
Grande. Ora configuriamo alcune opzioni Apache aggiuntive , ad esempio, nascondi il suo numero di versione, il suo banner ecc… aggiungendo quanto segue a /etc/httpd/conf.d/options.conf
## vim /etc/httpd/conf.d/options.conf TraceEnable off ## Disable Signature ServerSignature Off ## Disable Banner ServerTokens Prod
Testare il file di configurazione di Apache e riavviare il server web per rendere effettive le modifiche:
## apachectl configtest ## systemctl restart httpd ## systemctl status httpd
7. Installa PHP
Per poter eseguire applicazioni web basate su PHP, dobbiamo aggiungere il supporto PHP al server web Apache , quindi installiamo alcuni pacchetti richiesti con yum
:
## yum install php php-mysql
inoltre, potresti voler installare alcune altre estensioni PHP richieste dalle tue applicazioni. Ecco l'elenco:
php-bcmath : A module for PHP applications for using the bcmath library php-cli : Command-line interface for PHP php-common : Common files for PHP php-dba : A database abstraction layer module for PHP applications php-devel : Files needed for building PHP extensions php-embedded : PHP library for embedding in applications php-enchant : Enchant spelling extension for PHP applications php-fpm : PHP FastCGI Process Manager php-gd : A module for PHP applications for using the gd graphics library php-intl : Internationalization extension for PHP applications php-ldap : A module for PHP applications that use LDAP php-mbstring : A module for PHP applications which need multi-byte string handling php-mysql : A module for PHP applications that use MySQL databases php-mysqlnd : A module for PHP applications that use MySQL databases php-odbc : A module for PHP applications that use ODBC databases php-pdo : A database access abstraction module for PHP applications php-pear.noarch : PHP Extension and Application Repository framework php-pecl-memcache : Extension to work with the Memcached caching daemon php-pgsql : A PostgreSQL database module for PHP php-process : Modules for PHP script using system process interfaces php-pspell : A module for PHP applications for using pspell interfaces php-recode : A module for PHP applications for using the recode library php-snmp : A module for PHP applications that query SNMP-managed devices php-soap : A module for PHP applications that use the SOAP protocol php-xml : A module for PHP applications which use XML php-xmlrpc : A module for PHP applications which use the XML-RPC protocol
8. Configura PHP
OK, continuiamo con la configurazione PHP. Modifica /etc/php.ini
e impostare quanto segue:
## vim /etc/php.ini date.timezone = America/New_York memory_limit = 64M expose_php = Off
riavvia Apache usando systemctl
affinché le modifiche abbiano effetto:
## systemctl restart httpd ## systemctl status httpd
Verifica se il modulo PHP è caricato in Apache utilizzando:
## httpd -M | grep php also ## php -v
Puoi creare un test info.php
script anche usando il seguente comando:
## echo -e "<?php\n\tphpinfo();" > /var/www/html/info.php
e accedi con il seguente comando:
## curl -I $(curl -s icanhazip.com)/info.php
9. Configura VHost Apache
Ora, dovresti impostare le direttive Apache Virtual Host, per poter ospitare più domini, anche quelli basati su SSL utilizzando un indirizzo IP. Quindi, crea /etc/httpd/conf.d/vhosts.conf
e aggiungi quanto segue:
## cat /etc/httpd/conf.d/vhosts.conf # Load my vhosts IncludeOptional vhosts.d/*.conf
Questo dice ad Apache di caricare i file di configurazione che terminano con .conf
che risiedono in /etc/httpd/vhosts.d
. Come puoi immaginare, questo è il luogo in cui mettiamo i nostri host virtuali, quindi configuriamone uno per domain1.com
e un altro per domain2.net
VHOST per dominio1.com
## cat /etc/httpd/vhosts.d/domain1.com.conf <VirtualHost YOUR_SERVER_IP:80> ServerAdmin [email protected] DocumentRoot "/var/www/html/domain1.com" ServerName domain1.com ServerAlias www.domain1.com ErrorLog "/var/log/httpd/domain1.com-error_log" CustomLog "/var/log/httpd/domain1.com-access_log" combined <Directory "/var/www/html/domain1.com/"> DirectoryIndex index.html index.php Options FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>
VHOST per dominio2.net
## cat /etc/httpd/vhosts.d/domain2.net.conf <VirtualHost YOUR_SERVER_IP:80> ServerAdmin [email protected] DocumentRoot "/var/www/html/domain2.net" ServerName domain2.net ServerAlias www.domain2.net ErrorLog "/var/log/httpd/domain2.net-error_log" CustomLog "/var/log/httpd/domain2.net-access_log" combined <Directory "/var/www/html/domain2.net/"> DirectoryIndex index.html index.php Options FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost>
10. Riavvia il server Apache
Infine, riavvia Apache per rendere effettive le modifiche:
## apachectl configtest ## systemctl restart httpd ## systemctl status httpd
Ovviamente non devi installare LAMP su CentOS 7, se utilizzi uno dei nostri piani di hosting CentOS 7, nel qual caso puoi semplicemente chiedere ai nostri esperti amministratori Linux di installare LAMP su CentOS 7 per te. Sono disponibili 24 ore su 24, 7 giorni su 7 e si prenderanno immediatamente cura della tua richiesta.
PS. Se ti è piaciuto questo post, su come installare LAMP su CentOS 7, condividilo con i tuoi amici sui social network utilizzando i pulsanti a sinistra o semplicemente lascia una risposta qui sotto. Grazie.