Questo tutorial ti mostrerà come installare lo stack LAMP su Ubuntu 18.04 LTS. Uno stack software è un insieme di strumenti software raggruppati insieme. LAMP sta per Linux, Apache, MariaDB/MySQL e PHP, tutti open source e gratuiti. È lo stack software più comune che alimenta i siti Web dinamici e le applicazioni Web. Linux è il sistema operativo; Apache è il server web; MariaDB/MySQL è il server di database e PHP è il linguaggio di scripting lato server responsabile della generazione di pagine Web dinamiche.
Prerequisiti
Per seguire questo tutorial, hai bisogno di un sistema operativo Ubuntu 18.04 in esecuzione sul tuo computer locale o su un server remoto.
Se stai cercando un VPS (Virtual Private Server), puoi registrare un account su DigitalOcean tramite questo link speciale per ottenere $ 50 di credito gratuito. (Solo per nuovi utenti). Se sei già un utente DigitalOcean, puoi registrare un account su Vultr tramite questo link speciale per ottenere un credito gratuito di $ 50 (solo per i nuovi utenti).
E se devi configurare lo stack LAMP con un nome di dominio, ti consiglio di acquistare i nomi di dominio da NameCheap perché il prezzo è basso e offrono gratuitamente la protezione della privacy di Whois.
Fase 1:aggiorna i pacchetti software
Prima di installare lo stack LAMP, è una buona idea aggiornare il repository e i pacchetti software. Esegui il seguente comando sul tuo sistema operativo Ubuntu 18.04.
sudo apt update sudo apt upgrade
Fase 2:installa il server Web Apache
Immettere il comando seguente per installare il server Web Apache. Il apache2-utils
il pacchetto installerà alcune utili utilità come lo strumento di benchmarking del server HTTP Apache (ab).
sudo apt install -y apache2 apache2-utils
Dopo l'installazione, Apache dovrebbe essere avviato automaticamente. Controlla il suo stato con systemctl
.
systemctl status apache2
Esempio di output:
● apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Drop-In: /lib/systemd/system/apache2.service.d └─apache2-systemd.conf Active: active (running) since Sat 2018-09-08 10:46:05 UTC; 3min 37s ago Main PID: 1610 (apache2) Tasks: 55 (limit: 505) CGroup: /system.slice/apache2.service ├─1610 /usr/sbin/apache2 -k start ├─1612 /usr/sbin/apache2 -k start └─1613 /usr/sbin/apache2 -k start
Se non è in esecuzione, usa systemctl per avviarlo.
sudo systemctl start apache2
È anche una buona idea abilitare l'avvio automatico di Apache all'avvio del sistema.
sudo systemctl enable apache2
Controlla la versione di Apache:
apache2 -v
Uscita:
Server version: Apache/2.4.29 (Ubuntu) Server built: 2018-06-27T17:05:04
Ora digita l'indirizzo IP pubblico del tuo server Ubuntu 18.04 nella barra degli indirizzi del browser. Dovresti vedere il messaggio "Funziona!" Pagina Web, il che significa che il server Web Apache funziona correttamente. Se stai installando LAMP sul tuo computer Ubuntu 18.04 locale, digita 127.0.0.1
o localhost
nella barra degli indirizzi del browser.
Se la connessione viene rifiutata o non viene completata, potrebbe esserci un firewall che impedisce le richieste in arrivo alla porta TCP 80. Se stai utilizzando il firewall iptables, devi eseguire il comando seguente per aprire la porta TCP 80.
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
Se stai usando il firewall UFW, esegui questo comando per aprire la porta TCP 80.
sudo ufw allow http
Ora dobbiamo impostare www-data
(utente Apache) come proprietario della root del documento (altrimenti nota come web root). Per impostazione predefinita è di proprietà dell'utente root.
sudo chown www-data:www-data /var/www/html/ -R
Fase 3:installa il server di database MariaDB
MariaDB è un sostituto drop-in di MySQL. Immettere il seguente comando per installarlo su Ubuntu 18.04.
sudo apt install mariadb-server mariadb-client
Dopo l'installazione, il server MariaDB dovrebbe essere avviato automaticamente. Usa systemctl per verificarne lo stato.
systemctl status mariadb
Esempio di output:
● mariadb.service - MariaDB 10.1.34 database server Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2018-09-08 11:13:27 UTC; 21s ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 3473 (mysqld) Status: "Taking your SQL requests now..." Tasks: 27 (limit: 505) CGroup: /system.slice/mariadb.service └─3473 /usr/sbin/mysqld
Se non è in esecuzione, avvialo con questo comando:
sudo systemctl start mariadb
Per consentire a MariaDB di avviarsi automaticamente all'avvio del sistema, esegui
sudo systemctl enable mariadb
Ora esegui lo script di sicurezza post installazione.
sudo mysql_secure_installation
Quando ti chiede di inserire la password di root di MariaDB, premi il tasto Invio poiché la password di root non è ancora impostata. Quindi inserisci y
per impostare la password di root per il server MariaDB.
Successivamente, puoi premere Invio per rispondere a tutte le domande rimanenti, che rimuoveranno l'utente anonimo, disabiliteranno l'accesso root remoto e rimuoveranno il database di test. Questo passaggio è un requisito di base per la sicurezza del database MariaDB. (Nota che la lettera Y
è in maiuscolo, il che significa che è la risposta predefinita.)
Per impostazione predefinita, il pacchetto MaraiDB su Ubuntu utilizza unix_socket per autenticare l'accesso dell'utente, il che significa sostanzialmente che puoi utilizzare nome utente e password del sistema operativo per accedere alla console MariaDB. Quindi puoi eseguire il seguente comando per accedere senza fornire la password di root di MariaDB.
sudo mariadb -u root
Per uscire, corri
exit;
Controlla le informazioni sulla versione del server MariaDB.
mariadb --version
Uscita:
mariadb Ver 15.1 Distrib 10.1.34-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Fase 4:installa PHP7.2
Al momento in cui scrivo, PHP7.2 è l'ultima versione stabile di PHP e ha un vantaggio minore in termini di prestazioni rispetto a PHP7.1. Immettere il comando seguente per installare PHP7.2.
sudo apt install php7.2 libapache2-mod-php7.2 php7.2-mysql php-common php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-readline
Abilita il modulo Apache php7.2, quindi riavvia il server Web Apache.
sudo a2enmod php7.2 sudo systemctl restart apache2
Controlla le informazioni sulla versione PHP.
php --version
Uscita:
PHP 7.2.7-0ubuntu0.18.04.2 (cli) (built: Jul 4 2018 16:55:24) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.7-0ubuntu0.18.04.2, Copyright (c) 1999-2018, by Zend Technologies
Per testare gli script PHP con il server Apache, dobbiamo creare un info.php
file nella directory principale del documento.
sudo nano /var/www/html/info.php
Incolla il seguente codice PHP nel file.
<?php phpinfo(); ?>
Per salvare un file nell'editor di testo Nano, premi Ctrl+O
, quindi premere Invio per confermare. Per uscire, premi Ctrl+X
. Ora nella barra degli indirizzi del browser, inserisci server-ip-address/info.php
. Sostituisci sever-ip-address
con il tuo IP effettivo. Se segui questo tutorial sul tuo computer locale, digita 127.0.0.1/info.php
o localhost/info.php
.
Dovresti vedere le informazioni PHP del tuo server. Ciò significa che gli script PHP possono essere eseguiti correttamente con il server Web Apache.
Come eseguire PHP-FPM con Apache
Esistono fondamentalmente due modi per eseguire codice PHP con il server Web Apache:
- Modulo PHP di Apache
- PHP-FPM.
Nei passaggi precedenti, il modulo PHP7.2 viene utilizzato per gestire il codice PHP, il che di solito va bene. Ma in alcuni casi, è invece necessario eseguire il codice PHP con PHP-FPM. Ecco come.
Disabilita il modulo Apache PHP7.2.
sudo a2dismod php7.2
Installa PHP-FPM.
sudo apt install php7.2-fpm
Abilita proxy_fcgi
e setenvif
modulo.
sudo a2enmod proxy_fcgi setenvif
Abilita il /etc/apache2/conf-available/php7.2-fpm.conf
file di configurazione.
sudo a2enconf php7.2-fpm
Riavvia Apache per rendere effettive le modifiche.
sudo systemctl restart apache2
Ora se aggiorni il info.php
pagina nel tuo browser, scoprirai che l'API del server è cambiata in FPM/FastCGI
, il che significa che il server Web Apache passerà le richieste PHP a PHP-FPM.
Congratulazioni! Hai installato correttamente lo stack LAMP (Apache, MariaDB e PHP7.2) su Ubuntu 18.04. Per la sicurezza del tuo server, dovresti eliminare info.php
file ora per evitare sguardi indiscreti.
sudo rm /var/www/html/info.php
Passaggio successivo
Quindi hai appena imparato come installare lo stack LAMP su Ubuntu 18.04. E dopo? Potresti anche voler installare phpMyAdmin insieme al tuo stack LAMP.
- Come installare phpMyAdmin con Apache (Stack LAMP) su Ubuntu 18.04
Come sempre, se hai trovato utile questo post, iscriviti alla nostra newsletter gratuita per ricevere altri suggerimenti e trucchi. Abbi cura di 🙂