Server HTTP Apache
Apache HTTP Server, un server Web open source sviluppato dalla Apache Software Foundation. Il server Apache viene utilizzato per ospitare contenuti web. Risponde alle richieste di contenuto da browser web, come Internet Explorer e Firefox.
Nota :Il post utilizza la distribuzione RHEL/CentOS 7 per installare e configurare il server Apache. Sebbene i comandi di avvio/arresto/installazione possano differire, i passaggi di configurazione sono gli stessi in tutta la distribuzione LinuxInstallazione di Apache
Per configurare il tuo sistema come server web, inizia installando il pacchetto software httpd.
# yum install httpd
Utilizzare l'utilità systemctl per consentire al demone HTTP di avviarsi all'avvio e anche per avviare immediatamente il demone.
# systemctl enable httpd Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service. # systemctl start httpd
File di configurazione
Il file di configurazione principale per Apache è /etc/httpd/conf/httpd.conf . Una directory ausiliaria, /etc/httpd/conf.d , esiste anche per memorizzare i file di configurazione inclusi nel file di configurazione principale. I file di configurazione che caricano i moduli si trovano in /etc/httpd/conf.modules.d directory.
Nuovi sottocomandi apachectl in CentOS/RHEL 7
In CentOS/RHEL 7 sono disponibili nuovi sottocomandi apachectl. L'esempio seguente usa il configtest sottocomando per controllare la configurazione per possibili errori.
# apachectl configtest
Usa il aggraziato sottocomando per ricaricare la configurazione senza influire sulle richieste attive.
# apachectl graceful
Configurazione di Apache
Il file di configurazione principale per Apache è /etc/httpd/conf/httpd.conf . Apache viene eseguito come installato, ma puoi modificare le direttive di configurazione in questo file per personalizzare Apache per il tuo ambiente. Alcune di queste direttive sono descritte nel post seguente.
Server HTTP Apache:le direttive di configurazione più comunemente utilizzateTest del server HTTP Apache
Puoi confermare che Apache funziona puntando un browser sul sistema locale a http://localhost come mostrato nell'immagine qui sotto. Puoi anche puntare un browser su http:// seguito dall'indirizzo IP pubblico del server o da Nomeserver direttiva specificata nel file di configurazione. La pagina di test mostrata di seguito conferma il funzionamento del server HTTP Apache.
Per testare la visualizzazione del contenuto effettivo, crea un file HTML denominato index.html nella directory specificata dalla direttiva DocumentRoot (la directory predefinita è /var/www/html ). Apache visualizza automaticamente il file index.html in questa directory, se esiste.
Contenitori Apache
I container Apache sono direttive di configurazione speciali che raggruppano altre direttive. I contenitori utilizzano tag in stile XML, il che significa che l'inizio di un contenitore è
Host virtuali Apache
Apache supporta host virtuali, il che significa che un singolo server Apache può rispondere a richieste dirette a più indirizzi IP o nomi host. Ciascun host virtuale può fornire contenuto ed essere configurato in modo diverso.
Puoi configurare gli host virtuali in due modi:
1. Host virtuali basati su IP (host-by-IP)
2. Host virtuali basati sul nome (host per nome)
host per IP
Con host-by-IP, ogni host virtuale ha il proprio indirizzo IP e la propria combinazione di porte. Il server Web Apache risponde all'indirizzo IP che l'host risolve come. Host-by-IP è necessario per servire le richieste HTTPS a causa delle restrizioni nel protocollo Secure Sockets Layer (SSL).
host per nome
Con host-by-name, tutti gli host virtuali condividono l'indirizzo IP comune. Apache risponde alla richiesta mappando il nome host nella richiesta su Nomeserver e ServerAlias direttive nel file di configurazione del particolare host virtuale.
Utilizzare il contenitore
L'esempio seguente è una semplice configurazione di host virtuali basata sul nome:
<VirtualHost *:80> ServerName example1.com ServerAlias www.example1.com DocumentRoot /var/www/example1 ErrorLog example1.error_log </VirtualHost> <VirtualHost *:80> ServerName example2.com ServerAlias www.example2.com DocumentRoot /var/www/example2 ErrorLog example2.error_log </VirtualHost>