Torna al blog

Installazione di Apache Server su Ubuntu 18.04: una guida pratica

Installazione di Apache Server su Ubuntu 18.04: una guida pratica

Introduzione

L'Apache HTTP Server è un server web open-source di della Apache Software Foundation. Si tratta di un software che collega il tuo server locale ai server dei siti web come Firefox o Google Chrome. Questa connessione viene utilizzata per inviare e ricevere file e dati.

È il server più popolare al mondo. Oltre il 40% di tutti i siti web sul world wide web è gestito da Apache HTTP. I motivi della sua popolarità sono l'elevata personalizzabilità, l'ottima capacità di integrazione e l'affidabile supporto multimediale. Apache opera su un'architettura basata su moduli. È possibile modificare i singoli moduli per aggiungere e rimuovere varie funzionalità. In questo tutorial ti guideremo su come installare il server Apache su Ubuntu 18.04.

Prima dell'installazione

Prima di iniziare a installare Apache, è necessario soddisfare alcuni prerequisiti. Per cominciare, assicurati di aver già configurato un utente non-root con privilegi sudo sul server locale. L'altra cosa di cui avrai bisogno è un firewall. Devi abilitare il firewall di base e bloccare le porte non essenziali. Prima di avviare l'installazione, accedi al tuo utente non-root con privilegi. Puoi installare facilmente il tuo server seguendo il nostro tutorial sulla configurazione di un server Ubuntu.

Come installare il server web Apache su Ubuntu 18.04

Se hai soddisfatto i prerequisiti, puoi passare all'installazione vera e propria. Puoi installare ed esplorare il server web Apache in 6 semplici passaggi:

Passaggio 1: Installa Apache

Ti farà piacere sapere che Apache fa già parte di Ubuntu. Ciò significa che puoi installare Apache sul tuo server utilizzando i tipici strumenti di gestione dei pacchetti. È disponibile come software predefinito nel repository. Per prima cosa, dovrai aggiornare l'indice dei pacchetti locali:

Questo comando fa sì che le recenti modifiche a monte vengano visualizzate nell'indice dei pacchetti. Successivamente, dobbiamo dare il comando per installare il pacchetto apache2:

Passaggio 2: Modifica le impostazioni del firewall

Durante la gestione dei prerequisiti, devi aver configurato il firewall UFW. Se hai seguito le istruzioni, il firewall bloccherà l'accesso al server. Dobbiamo consentire l'accesso al server alle porte web predefinite prima di utilizzare Apache. Di conseguenza, le impostazioni del firewall devono essere modificate.

Al momento dell'installazione, Apache si registra con l'UFW. Il risultato di questa registrazione è la creazione di alcuni profili applicativi. Inoltre, puoi utilizzare questi profili per abilitare o disabilitare l'accesso del firewall ad Apache. Quindi, visualizza queste applicazioni ufw con il seguente comando:

Vedrai il tuo profilo applicativo in un elenco come questo:

Apache Server ufw app list

L'elenco sopra mostra che sono stati creati tre profili applicativi, ovvero Apache, Apache Full e Apache Secure. Ecco alcuni dettagli utili su ciascuno di questi profili:

  • Apache:

Il profilo Apache è in grado di aprire solo la porta 80. Questa porta consente il traffico web normale e non crittografato.

  • Apache Full:

Il profilo Apache Full ha la capacità di aprire sia la porta 80 che la 443. Mentre la porta 80 consente il traffico web normale e non crittografato, la porta 443 gestisce il traffico crittografato TLS/SSL.

  • Apache Secure:

Infine, Apache Secure apre solo la porta 443. Come menzionato sopra, è responsabile di consentire l'accesso al traffico web crittografato TLS o SSL.

Quando scegli tra questi profili, pensa al traffico che hai configurato. Vorrai assicurarti che il traffico desiderato passi attraverso il profilo più restrittivo possibile. La configurazione SSL è al di fuori del nostro scopo al momento. Pertanto, per ora ci concentreremo sul traffico proveniente dalla porta 80. Ciò significa che in questo scenario abiliteremo il profilo applicativo 'Apache'. Puoi farlo in questo modo:

Per verificare la modifica, digita quanto segue:

Questo comando mostrerà un output contenente il traffico HTTP che è attualmente autorizzato a passare. Vedrai qualcosa di simile a questo:

Apache Server firewall status

Il flusso di traffico mostra che il profilo Apache desiderato è stato attivato. L'accesso al server web è stato consentito attraverso il firewall.

Passo 3: Controlla il tuo server web

L'installazione di Apache è completata e le impostazioni del firewall sono state modificate. Al termine di questo processo, Ubuntu 18.04 avvierà automaticamente Apache. Successivamente, è necessario verificare con il sistema di inizializzazione systemd se il servizio è in esecuzione in un dato momento. Se desideri saperne di più sui sistemi di inizializzazione, puoi consultare il nostro tutorial su come gestire i servizi e le unità Systemd con Systemctl. Per verificare se il servizio è in esecuzione, digita:

L'output sarà il seguente:

apache2 status

Devi cercare lo stato Active o running del servizio sopra indicato. Questo mostra che il servizio è stato avviato ed è in esecuzione con successo. Esiste un altro modo, preferibile, per testare il funzionamento del servizio. Puoi verificarne lo stato richiedendo una pagina ad Apache. Utilizzando l'indirizzo IP del tuo server, puoi confermare se il software è in esecuzione sulla pagina di destinazione predefinita di Apache. Ecco un comando che puoi utilizzare per ottenere l'indirizzo IP del tuo server se non lo conosci già:

Questo comando mostrerà un risultato con una serie di indirizzi IP separati da spazi. Testali singolarmente nel browser. Un altro modo per accedervi è recuperare il tuo indirizzo IP pubblico. Puoi usare un comando come questo:

Questo ti mostrerà il tuo indirizzo IP così come viene visto da altre posizioni sul web. Successivamente, una volta ottenuto il tuo indirizzo IP, vai sul tuo browser web. Nella barra degli indirizzi, digita ed esegui quanto segue:

Questo aprirà la pagina web predefinita di Apache su Ubuntu 18.04. Si presenta così:

ubuntu homepage

Questa pagina contiene alcune informazioni di base sui tuoi file e directory. Poiché si è aperta digitando l'indirizzo, indica che Apache funziona correttamente.

Passo 4: Gestione di base in Apache

La verifica conferma che Apache è in esecuzione e che il tuo server è operativo. Ora esploreremo alcuni dei comandi di base che puoi utilizzare sul server per la gestione.

La configurazione predefinita di Apache lo avvia ogni volta che il server si avvia. Hai la possibilità di disabilitare questa impostazione. Digita:

Per riattivare questa funzionalità predefinita, usa questo comando:

Successivamente, digita quanto segue se desideri arrestare il server manualmente:

Se desideri riavviarlo dopo averlo arrestato, usa il comando:

Per arrestare e avviare il server, o essenzialmente aggiornarlo, digita:

Quando arresti il server, questo tende a perdere tutte le sue connessioni. Riavviarlo significa che ritrova e ricollega tali connessioni. Se desideri, puoi anche ricaricare Apache senza perdere la connessione. Questo è particolarmente utile quando si apportano modifiche alla configurazione. Digita quanto segue per ricaricare senza interrompere le connessioni:

Passo 5: Configurazione dell'host virtuale

Sebbene non sia obbligatorio, è altamente raccomandato configurare i propri host virtuali. Gli host virtuali sono piccoli blocchi nel server che contengono gruppi di dettagli di configurazione. Puoi ospitare diversi domini su un unico host virtuale dal tuo server.

Per impostazione predefinita, se utilizzi Apache su Ubuntu 18.04, ci sarà un blocco server attivato che gestirà i documenti nella directory /var/www/html. Ti consigliamo di modificare questa impostazione se ospiti più siti invece di uno solo. Tuttavia, esiste un'altra opzione possibile che funziona ancora meglio. Lascia intatta la directory /var/www/html. Vai invece su /var/www/ per creare una struttura di directory per i siti sul dominio desiderato. Se lo fai, la directory /var/www/html viene configurata come directory predefinita. Nel caso in cui la richiesta di un client non corrisponda a nessuno dei siti sul tuo dominio, verrà servita da qui.

Dopodiché, vedremo come creare un nuovo dominio e la directory associata. Ai fini di questo esempio, utilizzeremo un nome ipotetico, your_domain. Sostituisci your_domain ovunque sia presente nelle istruzioni successive con il tuo nome di dominio. Per iniziare, vediamo come creare una nuova directory per your_domain:

Ora devi assegnare la proprietà della directory. Puoi utilizzare la variabile d'ambiente $USER a questo scopo:

Per continuare, i permessi della tua root web devono essere corretti. Se non hai modificato il valore unmask nella configurazione, i tuoi permessi dovrebbero essere a posto. Ma se non sei sicuro, puoi sempre confermare con:

Successivamente, creeremo una pagina index.html. Puoi usare nano come noi o qualsiasi altro editor, se hai una preferenza:

Aggiungi questo HTML di esempio all'interno dell'index, quindi Salva e Chiudi:

Il passo successivo consiste nel creare un file di virtual host. Un file di virtual host con tutte le direttive corrette è necessario per fare in modo che Apache serva il contenuto di esempio sopra indicato. Il file di configurazione predefinito si troverà in: /etc/apache2/sites-available/000-default.conf. Invece di modificare quel file, ne creeremo uno nuovo in: /etc/apache2/sites-available/your_domain.conf.

In modo simile a prima, aggiungeremo un esempio di configurazione. Questa volta, tuttavia, lo aggiorneremo rispetto al nome di dominio e alla nuova directory che abbiamo appena creato. Aggiungi questo blocco, quindi Salva e Chiudi:

Come puoi vedere sopra, abbiamo anche aggiornato l'e-mail di ServerAdmin. Questo è un indirizzo che l'amministratore del sito your_domain può raggiungere. Non solo, ma abbiamo anche aggiornato DocumentRoot con la nuova directory e aggiunto due nuove direttive. Queste direttive includono ServerName e ServerAlias. ServerName viene utilizzato per impostare il dominio di base. Il dominio di base deve corrispondere per definire il virtual host. ServerAlias, d'altra parte, fornisce altri nomi che dovrebbero anch'essi corrispondere, simili al nome di base. Puoi abilitare facilmente il file utilizzando lo strumento a2ensite:

Per disabilitare il sito predefinito menzionato in 000-default.conf, usa questo comando:

Ora che la configurazione è pronta, puoi verificare la presenza di errori digitando:

Questo mostrerà il seguente Output se non ci sono errori di configurazione:

Per applicare le modifiche, devi riavviare il server Apache come indicato in precedenza:

Voilà! Hai configurato il tuo host virtuale e impostato il tuo nome di dominio. Per verificare se Apache sta effettivamente servendo your_domain, vai su http://your_domain.

Passo 6: Esplorazione di file e directory

Hai eseguito con successo alcune configurazioni di base del tuo server Apache. Inoltre, ora sai come gestire il tuo servizio Apache. Successivamente, puoi dedicare un po' di tempo a esplorare alcune delle directory e dei file più importanti.

Contenuto
  • /var/www/html

Abbiamo già parlato di questa directory in precedenza. Contiene la pagina predefinita di Apache. Se vuoi, puoi modificare il contenuto di questa pagina. Per farlo, dovrai modificare i file di configurazione di Apache.

Configurazione del server

 

  • /etc/apache2

Questa è la directory principale di configurazione di Apache. Ciò significa che questa directory contiene tutti i file di configurazione associati ad Apache.

  • /etc/apache2/apache2.conf

Come suggerisce l'aggiunta alla fine della directory, questo è il file di configurazione principale. Questo file carica diversi altri file nella directory e può essere utilizzato per apportare modifiche alla configurazione di Apache. Se desideri apportare modifiche alla configurazione del server Apache, è qui che dovrai effettuare le modifiche.

  • /etc/apache2/ports.conf

Come suggerisce il nome, questo file riguarda le porte di cui abbiamo discusso in precedenza. La porta 80 è abilitata per impostazione predefinita e la porta 443 viene attivata quando vengono introdotti moduli che contengono SSL. Questo file contiene dettagli su quali porte sono aperte e abilitate.

  • /etc/apache2/sites-available/

Qui è dove andranno i tuoi host virtuali. Qualsiasi configurazione dei blocchi server da eseguire viene effettuata in questa directory. Per abilitare i blocchi server, questi devono essere collegati ad altre directory tramite a2ensite. Apache avrà accesso ai file in questa directory solo se sono stati abilitati tramite il collegamento alla directory sites-enabled.

  • /etc/apache2/sites-enabled/

Questa è la directory in cui si trovano gli host virtuali abilitati. Come abbiamo menzionato, gli host vengono abilitati quando si collegano i file nella directory sites-available tramite il comando a2ensite. I file in questa directory sono importanti per quando Apache si avvia, si ricarica o compila una configurazione.

  • /etc/apache2/conf-available/, /etc/apache2/conf-enabled/

Queste directory funzionano in modo simile a sites-available e sites-enabled. Per abilitare i file nella directory conf-available, devi utilizzare il comando a2enconf. Il comando di disattivazione è a2disconf. Invece di memorizzare gli host virtuali per singolo sito, queste directory contengono dettagli di configurazione che non sono rilevanti per l'host virtuale:

  • /etc/apache2/mods-available/, /etc/apache2/mods-enabled/

Anche queste directory hanno una relazione simile ai due esempi precedenti. Contengono i moduli, sia quelli disponibili che quelli abilitati dal comando a2enmod. Per disabilitare un modulo, puoi utilizzare il comando a2dismod. I file con il suffisso .load contengono frammenti in grado di caricare un determinato modulo. I file con il suffisso .conf contengono i relativi dettagli di configurazione per il modulo in questione.

Log del server

 

  • /var/log/apache2/access.log

Questo file di log contiene tutte le richieste effettuate al tuo server. Ciò avviene per impostazione predefinita. Hai la possibilità di configurare Apache per registrare le richieste in modo diverso.

  • /var/log/apache2/error.log

Questo è il log degli errori. Tutti gli errori commessi finiscono direttamente in questo file per impostazione predefinita. Puoi vedere il livello di dettaglio con cui vengono registrati i log degli errori tramite la direttiva LogLevel.

Conclusione

Infine, seguendo i passaggi sopra indicati, puoi installare facilmente il server web Apache sul tuo Ubuntu 18.04. Una volta installato il server sul tuo sistema, puoi esplorare le varie opzioni disponibili sulla piattaforma. Puoi utilizzare diverse tecnologie per produrre vari tipi di contenuti. In questo modo, puoi coltivare un'esperienza unica e agevole per te stesso sul server.

Puoi anche imparare come proteggere il tuo server Apache con Let’s Encrypt seguendo il nostro tutorial passo-passo. Se vuoi imparare come installare Apache su CentOS 7, segui il nostro tutorial su come installare lo stack Linux, Apache, MySQL, PHP (LAMP) su CentOS 7.

Buon computing!

author

Akshay Nagpal

Autore · CloudSigma

Preslav Dobrev è un designer creativo presso CloudSigma, con un focus su un'identità aziendale coerente attraverso l'uso di canali di marketing tradizionali e innovativi. È abile nel fondere la visione artistica con il marketing strategico per creare narrazioni di brand di grande impatto.

Commenti

Ancora nessun commento. Scrivi il primo.