Oppsett Apache virtuelle verter på Ubuntu 15.10

About virtuelle verter
Virtual Hosts er vant til setup mer enn ett domene eller nettsteder med en enkelt IP-adresse. Dette er svært nyttig hvis noen ønsker å kjøre flere nettsteder med en enkelt IP-adresse på én VPS.
I denne opplæringen, la meg vise hvordan sette opp virtuelle verter i Apache web server på Ubuntu 15.10 server. Også denne metoden skal fungere på tidligere Ubuntu-distribusjoner som Ubuntu 15.04, 14.10 og 14.04 etc.
Scenario
For hensikten med denne opplæringen, vil jeg være å bruke Ubuntu 15.10 64bit server-versjonen, og jeg kommer til å vert to test nettsteder nemlig "unixmen1.local" og "unixmen2.local" i samme serveren selv.
Min test boksen IP-adresse og vertsnavn er henholdsvis 192.168.1.103/24 og server.unixmen.local. Sørg for å endre de virtuelle domenenavn som per kravet
Installer Apache Webserver
Før installere apache server, la oss oppdatere vår Ubuntu server.
Å gjøre det, kjør:

 sudo apt-get updateNow, installere Apache web server med følgende kommando: 
 sudo apt-get install apache2After installere apache server, la oss teste om webserver fungerer som den skal eller ikke ved å navigere til http: //ip-adresse /. 
Som du ser i bildet over, er apache webserver fungerer.
Nå, la oss fortsette å sette opp virtuelle verter i Apache webserver.
Setup Apache Virtual Hosts
1. Lag virtuelle kataloger
Nå, la oss fortsette å sette opp virtuelle verter. Som jeg nevnte tidligere, jeg kommer til å være vert for to virtuelle verter kalt "unixmen1.local", og "unixmen2.local".
Opprett en offentlig katalog for å plassere de to virtuelle verter data.
Først, la oss skape en katalog for unixmen1.local site:
 sudo mkdir -p /var/www/html/unixmen1.local/public_htmlThen, lage katalogen for unixmen2.local site: 
 sudo mkdir -p /var/www/html/unixmen2.local/public_html2. Sette opp eierskap og rettigheter 
ovenfor kataloger eies av root bruker nå. Vi bør endre eierskapet av disse to katalogene til vanlig bruker
 sudo chown -R $ BRUKER:. $ USER /var/www/html/unixmen1.local/public_html/
sudo chown -R $ BRUKER: $ USER /var/www/html/unixmen2.local/public_html/The "$ USER" variabel indikerer påloggede brukeren 
Sett leserettigheter til Apache web root (/var /www /html /. ) katalog, slik at alle kan lese filer fra den katalogen.
 sudo chmod -R 755 /var /www /html /Vi har laget kataloger for å holde nettsteder data og tildelt de nødvendige tillatelser og eierskap til dem . 
4. Opprett eksempelsider for Virtual Hosts
Nå er vi nødt til å lage eksempelsider for å bli servert gjennom nettsteder.
Først, la oss lage en eksempelside til unixmen1.local virtuell vert.
Lag en " index.html 'for unixmen1.local virtuell host, etter
 sudo vi /var/www/html/unixmen1.local/public_html/index.htmlAdd følgende contents:
<html><head><title>www.unixmen1.local</title></head><body><h1>Welcome Til Unixmen1.local nettsted < /h1 > < /body > < /html >.. Lagre og lukk filen 
Tilsvarende legge prøven siden til den andre virtuelle verten
 sudo vi /var /www/html/unixmen2.local/public_html/index.htmlAdd følgende contents:
<html><head><title>www.unixmen2.local</title></head><body><h1>Welcome Til Unixmen2.local nettsted < /h1 > < /body > < /html >. Lagre og lukk filen 
5. Opprett Virtual vert filer
Som standard leveres Apache med en standard virtuell host fil kalt 000-default.conf. Vi vil kopiere 000-default.conf filinnholdet til våre nye virtuelle vertsfiler.
 sudo cp /etc/apache2/sites-available/000-default.conf /etc /apache2 /sites-available /unixmen1 .local.conf 
 sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/unixmen2.local.confMake at de virtuelle vertsfiler inneholder .conf forlengelse på slutten. 
Nå endrer unximen1.local.conf filen for å reflektere sammen med våre nye egne verdier.
 sudo vi /etc/apache2/sites-available/unixmen1.local.confMake relevante endringer som gjenspeiler til unixmen1 nettstedet 
 < virtuellverten *:. 80 > # Det Server Direktivet setter forespørselen ordningen, vertsnavn og port som # serveren bruker for å identifisere seg selv. Dette brukes når du oppretter # omdirigering nettadresser. I sammenheng med virtuelle verter, Server # angir hva vertsnavn må vises i anmodningen er Host: header til # kamp denne virtuelle host. For standard virtuell host (denne filen) denne # verdien er ikke avgjørende som det blir brukt som en siste utvei vert uansett. # Du må imidlertid sette den for ytterligere virtuell vert eksplisitt. #ServerName Www.example.com Server [email protected] Server unixmen1.local Server www.unixmen1.local Document /var/www/html/unixmen1.local/public_html # tilgjengelig loglevels: trace8, ..., trace1, feilsøke, info, varsel, advare, # feil, crit, våken, forvillet. # Det er også mulig å konfigurere LogLevel for bestemte # moduler, f.eks #LogLevel Info ssl: advare feillogg $ {APACHE_LOG_DIR} /error.log CustomLog $ {APACHE_LOG_DIR} /access.log kombinert # For de fleste konfigurasjonsfiler fra conf-butikken /, som er # aktivert eller deaktivert på et globalt nivå, er det mulig til # inkludere en linje for bare én bestemt virtuell host. For eksempel # følgende linje gjør at CGI-konfigurasjonen for denne verten # etter at det har blitt globalt deaktivert med "a2disconf". # Include conf-available /tjener-cgi-bin.conf < /virtuellverten >. Like klok, modifisere andre virtuelle host filen 
 sudo vi /etc/apache2/sites-available/unixmen2.local.confMake den relevante endringer som gjenspeiler til unixmen2 nettstedet 
 < virtuellverten *:. 80 > # Det Server Direktivet setter forespørselen ordningen, vertsnavn og port som # serveren bruker for å identifisere seg selv. Dette brukes når du oppretter # omdirigering nettadresser. I sammenheng med virtuelle verter, Server # angir hva vertsnavn må vises i anmodningen er Host: header til # kamp denne virtuelle host. For standard virtuell host (denne filen) denne # verdien er ikke avgjørende som det blir brukt som en siste utvei vert uansett. # Du må imidlertid sette den for ytterligere virtuell vert eksplisitt. #ServerName Www.example.com Server [email protected] Server unixmen2.local Server www.unixmen2.local Document /var/www/html/unixmen2.local/public_html # tilgjengelig loglevels: trace8, ..., trace1, feilsøke, info, varsel, advare, # feil, crit, våken, forvillet. # Det er også mulig å konfigurere LogLevel for bestemte # moduler, f.eks #LogLevel Info ssl: advare feillogg $ {APACHE_LOG_DIR} /error.log CustomLog $ {APACHE_LOG_DIR} /access.log kombinert # For de fleste konfigurasjonsfiler fra conf-butikken /, som er # aktivert eller deaktivert på et globalt nivå, er det mulig til # inkludere en linje for bare én bestemt virtuell host. For eksempel # følgende linje gjør at CGI-konfigurasjonen for denne verten # etter at det har blitt globalt deaktivert med "a2disconf". # Include conf-available /tjener-cgi-bin.conf < /virtuellverten >. Etter å modifisere de virtuelle vertsfiler, deaktiver standard virtuell host (000.default.conf), og aktivere nye virtuelle verter som vist nedenfor 
< pre> sudo a2dissite 000-default.conf
 sudo a2ensite unixmen1.local.conf 
 sudo a2ensite unixmen2.local.confFinally, starte apache tjenesten 
I Ubuntu 15.10 /15.04.
 sudo systemctl starte apache2In Ubuntu 14.10 og tidligere versjoner: 
 sudo tjenesten apache2 restartThat er det. Nå, vi konfigurert Apache virtuelle verter på vår Ubuntu server. 
Testing Virtual Hosts
Rediger filen /etc /hosts, etter
 sudo vi /etc /hostsAdd de virtuelle domenenavn én etter én som vist nedenfor 
 [...] 192.168.1.103 unixmen1.local192.168.1.103 unixmen2.localSave og lukk filen 
Merk:.. I tilfelle du ønsker å få tilgang til de ovennevnte områder fra en ekstern system, må du legge det over to linjer til den eksterne systemets /etc /hosts /filen også. Ikke glem å sette IP-adressen til din egen
Åpne opp din nettleser og peker på http:. //unixmen1.local Eller http: //unixmen2.local. Du bør se eksempelsider som vi opprettet tidligere
Unixmen1.local Test side.
Unixmen2.local Test side:
På samme måte kan du opprette og være vert så mange som nettsteder du ønsket. Sette opp Virtual Hosts i Ubuntu er veldig enkelt. Håper denne opplæringen vil hjelpe deg.
Cheers!