Il server HTTP Apache è uno dei server Web più popolari al mondo. È un server HTTP open source e multipiattaforma che alimenta un'ampia percentuale dei siti Web di Internet. Apache fornisce molte potenti funzionalità che possono essere estese tramite moduli aggiuntivi.
In questo tutorial, analizzeremo i passaggi per installare Apache su un server Debian 9.
Prerequisiti #
Prima di iniziare con il tutorial, assicurati di aver effettuato l'accesso come utente con privilegi sudo.
Installazione di Apache #
Apache è disponibile nei repository Debian predefiniti e l'installazione è piuttosto semplice.
Prima aggiorna l'indice del pacchetto e poi installa apache2 pacchetto con i seguenti comandi:
sudo apt updatesudo apt install apache2
Ecco fatto, Apache è installato e avviato automaticamente, puoi controllare lo stato del servizio Apache con:
sudo systemctl status apache2 ● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2018-08-23 20:04:47 UTC; 13s ago
Main PID: 11604 (apache2)
CGroup: /system.slice/apache2.service
├─11604 /usr/sbin/apache2 -k start
├─11608 /usr/sbin/apache2 -k start
└─11609 /usr/sbin/apache2 -k start
Regola il firewall #
Se utilizzi iptables per filtrare le connessioni al tuo sistema, dovrai aprire HTTP (80 ) e HTTPS (443 ) porte.
Apri le porte necessarie eseguendo il seguente comando:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPTsudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
Verifica dell'installazione di Apache #
Per verificare che tutto funzioni correttamente, apri il browser, digita l'indirizzo IP del tuo server o il nome di dominio http://YOUR_IP_OR_DOMAIN/ e vedrai la pagina di benvenuto di Apache predefinita come mostrato di seguito:
La pagina include alcune informazioni di base sui file di configurazione di Apache, gli script di supporto e le posizioni delle directory.
Gestisci il servizio Apache con systemctl #
Ora che Apache è installato sul tuo sistema Debian, puoi dedicare un minuto a esaminare e acquisire familiarità con i comandi di base per la gestione dei servizi apache:
Per interrompere il servizio Apache, esegui:
sudo systemctl stop apache2 Ricomincia, digitando:
sudo systemctl start apache2 Per riavviare il servizio Apache:
sudo systemctl restart apache2 Ricarica l'Apache con una nuova configurazione con:
sudo systemctl reload apache2 Se vuoi disabilitare il servizio Apache per l'avvio all'avvio:
sudo systemctl disable apache2 E per riattivarlo di nuovo:
sudo systemctl enable apache2 Struttura e best practice del file di configurazione di Apache #
- Nei sistemi basati su Debian i file di configurazione di Apache si trovano in
/etc/apache2directory. - Il file di configurazione principale di Apache è
/etc/apache2/apache2.conf. - Le porte che Apache ascolterà sono specificate in
/etc/apache2/ports.conffile. - I file Apache Virtual Hosts si trovano in
/etc/apache2/sites-availabledirectory. I file di configurazione che si trovano in questa directory non vengono utilizzati da Apache a meno che non siano collegati a/etc/apache2/sites-enableddirectory. - Puoi attivare una direttiva host virtuale creando un collegamento simbolico usando
a2ensitecomando dai file di configurazione trovati insites-availablenella directorysites-enableddirectory. Per disattivare un host virtuale usaa2dissitecomando. - Si consiglia vivamente di seguire la convenzione di denominazione standard, ad esempio se il tuo nome di dominio è
mydomain.comquindi il file di configurazione del dominio dovrebbe essere denominato/etc/apache2/sites-available/mydomain.com.conf - I file di configurazione utilizzati per caricare vari moduli Apache si trovano in
/etc/apache2/mods-availabledirectory. Configurazioni inmods-availablela directory può essere abilitata creando un collegamento simbolico a/etc/apache2/mods-enabledirectory utilizzandoa2enconfcomando e disabilitato cona2disconfcomando. - I file contenenti frammenti di configurazione globale sono archiviati in
/etc/apache2/conf-availabledirectory. File nelconf-availablela directory può essere abilitata creando un collegamento simbolico al/etc/apache2/conf-enabledusandoa2enconfcomando e disabilitato cona2disconfcomando. - File di registro di Apache (
access.logeerror.log) si trovano in/var/log/apachedirectory. Si consiglia di utilizzare un diversoaccesseerrorfile di log per ogni host virtuale. - Puoi impostare la directory principale del documento di dominio in qualsiasi posizione desideri. Le posizioni più comuni per webroot includono:
/home/<user_name>/<site_name>/var/www/<site_name>/var/www/html/<site_name>/opt/<site_name>