Come tutti sappiamo che Apache è un server Web molto potente, altamente flessibile e configurabile per Nix OS. Qui in questo tutorial, discuteremo un'altra caratteristica di Apache che ci consente di ospitare più di un sito Web su una singola macchina Linux. L'implementazione dell'hosting virtuale con il server web Apache può aiutarti a risparmiare sui costi che stai investendo sulla manutenzione del tuo server e sulla loro amministrazione.
Da non perdere: NGINX Hosting virtuale basato su nome e IP (blocchi server)
Concetto di Hosting web condiviso e Hosting web per rivenditori si basa su questa struttura di Apache solo.
Ci sono due tipi di hosting virtuale disponibili con Apache.
Con l'hosting virtuale basato sul nome puoi ospitare diversi domini/siti web su una sola macchina con una sola IP. Tutti i domini su quel server condivideranno un singolo IP. È più facile da configurare rispetto all'hosting virtuale basato su IP, devi solo configurare
DNS del dominio per mapparlo con il suo indirizzo IP corretto e quindi configurare Apache per riconoscerlo con i nomi di dominio.Con l'hosting virtuale basato su IP, è possibile assegnare un IP separato per ciascun dominio su un singolo server, questi IP possono essere collegati al server con singole schede NIC e più NIC.
Consente di impostare Hosting virtuale basato sul nome e Hosting virtuale basato su IP in RHEL, CentOS e Fedora.
Prima di configurare l'hosting virtuale con Apache, nel sistema deve essere installato il software Web Apache. in caso contrario, installalo utilizzando il programma di installazione del pacchetto predefinito chiamato yum.
[[e-mail protetta] ~]# yum installa httpd
Ma, prima di creare un host virtuale, devi creare una directory in cui conserverai tutti i file del tuo sito web. Quindi, crea directory per questi due host virtuali sotto /var/www/html cartella. Per favore ricorda /var/www/html sarà il tuo default Radice documento nella configurazione virtuale di Apache.
[[e-mail protetta]~]# mkdir /var/www/html/esempio1.com/ [[e-mail protetta] ~]# mkdir /var/www/html/esempio2.com/
Per configurare l'hosting virtuale basato sul nome devi dire ad Apache a quale IP utilizzerai per ricevere le richieste Apache per tutti i siti web o nomi di dominio. Possiamo farlo con NomeVirtualHost direttiva. Apri il file di configurazione principale di Apache con VI editore.
[[e-mail protetta] ~]# vi /etc/httpd/conf/httpd.conf
Cercare NomeVirtualHost e decommenta questa riga rimuovendo il # firmare di fronte ad esso.
NomeVirtualHost
Quindi aggiungi l'IP con possibile in cui desideri ricevere le richieste Apache. Dopo le modifiche, il tuo file dovrebbe apparire così:
NomeVirtualHost 192.168.0.100:80
Ora è il momento di configurare le sezioni dell'host virtuale per i tuoi domini, spostati in fondo al file premendo Maiusc + Sol. Qui in questo esempio, stiamo configurando sezioni di host virtuale per due domini
Aggiungi le seguenti due direttive virtuali in fondo al file. Salva e chiudi il file.
ServerAdmin [e-mail protetta] DocumentRoot /var/www/html/example1.com ServerName www.example1.com. ErrorLog logs/www.example1.com-error_log. Registri CustomLog/www.example1.com-access_log common. ServerAdmin [e-mail protetta] DocumentRoot /var/www/html/example2.com ServerName www.example2.com. ErrorLog logs/www.example2.com-error_log. Registri CustomLog/www.example2.com-access_log common.
Sei libero di aggiungere tutte le direttive che vuoi aggiungere nella sezione host virtuale del tuo dominio. Quando hai finito con le modifiche in httpd.conf file, controlla la sintassi dei file con il seguente comando.
[[e-mail protetta] ~]# httpd -t Sintassi OK
Si consiglia di controllare la sintassi del file dopo aver apportato alcune modifiche e prima di riavviare il server Web perché se presente la sintassi va storta Apache si rifiuterà di lavorare con alcuni errori e alla fine influenzerà il tuo server web esistente mentre. Se la sintassi è ok. Riavvia il tuo server Web e aggiungilo a chkconfig per avviare il tuo server web in livello di esecuzione 3 e 5 solo al momento dell'avvio.
[[e-mail protetta]~]# servizio httpd riavvio. Arresto di httpd: [ OK ] Avvio httpd: [ OK ]
[[e-mail protetta] ~]# chkconfig --level 35 httpd attivo
Ora è il momento di creare una pagina di prova chiamata index.html aggiungi del contenuto al file così avremo qualcosa per controllarlo, quando l'IP chiama l'host virtuale.
[[e-mail protetta] ~]# vi /var/www/html/example1.com/index.html
www.esempio1.com Ciao, benvenuto su www.example1.com.
[[e-mail protetta] ~]# vi /var/www/html/example2.com/index.html
www.esempio2.com Ciao, benvenuto su www.example2.com.
Una volta terminato, puoi testare la configurazione accedendo a entrambi i domini in un browser.
http://www.example1.com. http://www.example2.com
Per configurare l'hosting virtuale basato su IP, devi averne più di uno indirizzo IP/Porta assegnato al tuo server o alla tua macchina Linux.
Può essere su un singolo NIC carta, ad esempio: eth0:1, eth0:2, eth0:3 … così via. multiplo NIC le carte possono anche essere allegate. Se non sai come creare più IP su un singolo NIC, segui la guida qui sotto, che ti aiuterà nella creazione.
Scopo dell'attuazione Hosting virtuale basato su IP è assegnare l'implementazione per ogni dominio e quel particolare IP non verrà utilizzato da nessun altro dominio.
Questo tipo di configurazione è richiesto quando un sito Web è in esecuzione con SSL certificato (mod_ssl) o su porte e IP diversi. E puoi anche eseguire più istanze di Apache su una singola macchina. Per controllare gli IP collegati al tuo server, controlla usando comando ifconfig.
[e-mail protetta] ~]# ifconfig
eth0 Link encap: Ethernet HWaddr 08:00:27:4C: EB: CE inet addr: 192.168.0.100 Bcast: 192.168.0.255 Mask: 255.255.255.0 inet6 addr: fe80::a00:27ff: fe4c: ebce/64 Ambito: Link SU BROADCAST RUNNING MULTICAST MTU: 1500 Metrica: 1 Pacchetti RX: 17550 errori: 0 ignorati: 0 superamenti: 0 frame: 0 Pacchetti TX: 15120 errori: 0 eliminati: 0 superamenti: 0 portante: 0 collisioni: 0 txqueuelen: 1000 Byte RX: 16565983 (15,7 MiB) Byte TX: 2409604 (2,2 MiB) eth0:1 Encap collegamento: Ethernet HWaddr 08:00:27:4C: EB: CE inet addr: 192.168.0.101 Bcast: 192.168.0.255 Mask: 255.255. 255.0 SU BROADCAST RUNNING MULTICAST MTU: 1500 Metrico: 1 lo Encap link: Local Loopback inet addr: 127.0.0.1 Mask: 255.0.0.0 inet6 addr: ::1/128 Ambito: Host UP LOOPBACK RUNNING MTU: 16436 Metrico: 1 RX pacchetti: 1775 errori: 0 scartati: 0 sovraccarichi: 0 frame: 0 pacchetti TX: 1775 errori: 0 scarti: 0 sovraccarichi: 0 portante: 0 collisioni: 0 txqueuelen: 0 byte RX: 3416104 (3,2 MiB) byte TX: 3416104 (3,2 MB)
Come puoi vedere nell'output sopra, due IP 192.168.0.100 (eth0) e 192.168.0.101 (eth0:1) è collegato al server, entrambi gli IP sono assegnati allo stesso dispositivo di rete fisico (eth0).
Ora assegna uno specifico IP/Porta per ricevere richieste http, puoi semplicemente farlo cambiando Ascolta direttiva in httpd.conf file.
[[e-mail protetta] ~]# vi /etc/httpd/conf/httpd.conf
Cerca la parola “Ascolta”, Troverai una sezione in cui è scritta la breve descrizione della direttiva Listen. In quella sezione, commenta la riga originale e scrivi la tua direttiva sotto quella riga.
# Ascolta 80 Ascolta 192.168.0.100:80
Ora, crea una sezione Host virtuale per entrambi i domini. Vai in fondo al file e aggiungi le seguenti direttive virtuali.
ServerAdmin [e-mail protetta] DocumentRoot /var/www/html/example1 ServerName www.example1.com. ErrorLog logs/www.example1.com-error_log. TransferLog logs/www.example1.com-access_log. ServerAdmin [e-mail protetta] DocumentRoot /var/www/html/example2 ServerName www.example2.com. ErrorLog logs/www.example2.com-error_log. TransferLog logs/www.example2.com-access_log.
Ora, poiché hai modificato il file conf principale di Apache, devi riavviare il servizio http come di seguito.
[[e-mail protetta]~]# servizio httpd riavvio. Arresto di httpd: [ OK ] Avvio httpd: [ OK ]
Metti alla prova la tua configurazione di hosting virtuale basato su IP accedendo a URL sul browser web come mostrato di seguito.
http://www.example1.com. http://www.example2.com
Oggi è tutto con l'host virtuale Apache. Se stai cercando di proteggere e rafforzare la tua configurazione Apache, leggi il nostro articolo che guida.
Documentazione dell'host virtuale Apache
Verrò di nuovo con altri suggerimenti e trucchi Apache nei miei articoli futuri, fino ad allora Stay Geeky e connesso a Tecmint.com. Non dimenticare di lasciare i tuoi suggerimenti sull'articolo nella nostra sezione commenti qui sotto.