Difficulty: Beginner
Estimated Time: 10 minutes

In questa guida, verrà installato uno stack LAMP su una macchina Ubuntu 16.04.

Ubuntu soddisferà il nostro primo requisito: un sistema operativo Linux.

Uno stack "LAMP" è un gruppo di software open source generalmente installato insieme per consentire a un server di ospitare siti Web dinamici e app Web. Questo termine è in realtà un acronimo che rappresenta il sistema operativo Linux, con il server Web Apache. I dati del sito sono memorizzati in un database MySQL e il contenuto dinamico viene elaborato da PHP.

#Prerequisiti

Prima di iniziare con questa guida, è necessario disporre di un account utente separato, non root con i privilegi sudo impostati sul server.

Don’t stop now! The next scenario will only take about 10 minutes to complete.

Come installare lo stack Apache, MySQL, PHP (LAMP) su Ubuntu 16.04

Step 1 of 5

Installa Apache e consenti l'accesso nel firewall

Innanzitutto verifichiamo su quale macchina stiamo lavorando

cat /etc/os-release

Con quale utente siamo loggati

whoami

In quale directory siamo posizionati

pwd

Queli files sono presenti nella ditectory

ls -la

Il server Web Apache è tra i server web più popolari al mondo. È ben documentato ed è stato ampiamente utilizzato per gran parte della storia del web, il che lo rende un'ottima scelta di default per l'hosting di un sito web.

Possiamo installare Apache facilmente usando il gestore di pacchetti di Ubuntu, apt. Un gestore di pacchetti ci consente di installare la maggior parte del software senza problemi da un repository gestito da Ubuntu.

Per i nostri scopi, possiamo iniziare digitando questi comandi:

sudo apt-get update

sudo apt-get install apache2

Dato che stiamo usando un comando sudo, queste operazioni vengono eseguite con i privilegi di root. Ti chiederà la password dell'utente normale per verificare le tue intenzioni.

Una volta inserita la tua password, apt ti dirà quali pacchetti intende installare e quanto spazio su disco occuperanno. Premi Y e premi Invio per continuare, e l'installazione procederà.

#Impostare Global ServerName per sopprimere gli avvisi di sintassi

Successivamente, aggiungeremo una riga singola al file /etc/apache2/apache2.conf per sopprimere un messaggio di avviso. Sebbene innocuo, se non si imposta ServerName a livello globale, si riceverà il seguente avviso quando si controlla la configurazione di Apache per gli errori di sintassi:

apache2ctl configtest

Se l' output e' simile a questo:

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message

Syntax OK

Apri il file di configurazione principale /etc/apache2/apache2.conf col tuo editor di testo:

nano /etc/apache2/apache2.conf

ed inserisci l'istruzione

ServerName 127.0.0.1

Quindi, verifica la presenza di errori di sintassi digitando:

sudo apache2ctl configtest

Da quando abbiamo aggiunto la direttiva globale ServerName, tutto ciò che dovresti vedere è:

Syntax OK

Riavvia Apache per implementare le tue modifiche:

systemctl restart apache2

Ora puoi iniziare a regolare il firewall.

#Regola il firewall per consentire il traffico web

Quindi, supponendo di aver seguito le istruzioni iniziali di configurazione del server per abilitare il firewall UFW, assicurarsi che il firewall consenta il traffico HTTP e HTTPS. Puoi assicurarti che UFW abbia un profilo di applicazione per Apache in questo modo:

sudo ufw app list Output Available applications: Apache Apache Full Apache Secure OpenSSH

Se si guarda il profilo Apache Full, dovrebbe mostrare che abilita il traffico alle porte 80 e 443:

sudo ufw app info "Apache Full"

Output Profile: Apache Full Title: Web Server (HTTP,HTTPS) Description: Apache v2 is the next generation of the omnipresent Apache web server.

Ports: 80,443/tcp

Consenti traffico in entrata per questo profilo:

sudo ufw allow in "Apache Full"

ora digitare:

http://your_server_IP_address

nel nostro caso:

https://[[HOST_SUBDOMAIN]]-80-[[KATACODA_HOST]].environments.katacoda.com/