Opsætning af navnebaseret Virtualhost Apache
Denne artikel er en del af Apache Server Guide serien:
- Sikring af Apache på Ubuntu - Del 1
- Sikring af Apache på Ubuntu - Del 2
- Optimering af Apache Performance - Del 1
- Optimering af Apache Performance - Del 2
- Opsætning af navnebaseret Virtualhost Apache
- Opsætning af IP og portbaseret Virtualhost i Apache
- Sådan oprettes adgangskodebeskyttet webkatalog i Apache
- Opsætning af Apache Server med SSL-support på Ubuntu
- Opsætning af Fail2ban for at beskytte Apache fra et DDOS-angreb
- Sådan opsættes Webdav med Apache på Ubuntu
- Overvåg Apache Web Server ved hjælp af Mod_status
- Sådan beskytter du mod DDoS med Mod_evasive på Apache Server
Virtual hosting er en metode til hosting flere domænenavne på en enkelt server. Det er to typer virtuel hosting: "Navnbaseret virtuel hosting" og "IP-baseret virtuel hosting." Med den navnebaserede virtuelle hosting kan du være vært for flere websteder på en enkelt maskine med en enkelt IP-adresse.
Her skal vi være vært for to hjemmesider - nemlig "www.virtualhost1.com" og "www.virtualhost2.com" - på en enkelt IP "192.168.1.227" på Apache webserveren, den mest populære webserver i verden .
Bemærk: mens Ubuntu 14.04 server bruges til denne vejledning, vil instruktionerne være ens for de fleste Linux distros.
Kom godt i gang: Installation af Apache
Først skal du opdatere dit system og derefter installere Apache.
For at gøre dette skal du køre følgende kommando:
sudo apt-get opdatering sudo apt-get install apache2
For at kontrollere, om webserveren virker eller ej, skal du åbne webbrowseren og navigere til URL'en http://192.168.1.227/ (under forudsætning af at din server-IP-adresse er 192.168.1.227).
Du skal se, at Apache webserveren arbejder.
Opret virtuelle mapper
For det første skal du oprette en mappestruktur, der vil holde de webstedsdata, som vi skal betjene til kunder.
Opret to mapper til hjemmesiderne "www.virtualhost1.com" og "www.virtualhost2.com."
sudo mkdir -p /var/www/html/www.virtualhost1.com sudo mkdir -p /var/www/html/www.virtualhost2.com
Bemærk : Standardmappen til hosting af dine filer er "/ var / www / html." For dem, der bruger en alternativ filsti, bliver du nødt til at ændre ovenstående kode i overensstemmelse hermed.
Nu skal du oprette en "index.html" -fil for begge websteder. Dette vil blive betjent af Apache webserveren.
Opret en index.html-fil til "www.virtualhost1.com" virtuelle vært:
sudo nano /var/www/html/www.virtualhost1.com/index.html
Tilføj følgende indhold:
www.virtualhost1.com
Gem og luk filen.
Tilsvarende opretter du en index.html-fil til "www.virtualhost2.com" virtuelle vært:
sudo nano /var/www/html/www.virtualhost2.com/index.html
Tilføj følgende indhold:
www.virtualhost2.com
Gem og luk filen.
Opsætning af ejerskab og tilladelser
Apache-tjenesten kører som standard som en "www-data" -bruger i Ubuntu. Begge virtuelle mapper, som vi oprettede tidligere, ejes af root. Du skal ændre ejerskabet af disse to virtuelle mapper til "www-data", så Apache kan læse og skrive data.
For at gøre dette skal du køre
sudo chown -R www-data: www-data /var/www/html/www.virtualhost1.com/ sudo chown -R www-data: www-data /var/www/html/www.virtualhost2.com/
Du skal også gøre Apache web root (/ var / www / html) katalog verden læselig, så alle kan læse filer fra den pågældende mappe.
sudo chmod -R 755 / var / www / html
Opret virtuelle værtsfiler:
Apache leveres som standard med en standard virtuel værtsfil kaldet "000-default.conf." Du skal først deaktivere denne virtualhost-fil.
For at gøre dette skal du køre følgende kommando:
sudo a2dissite 000-default.conf
Opret nu en virtuel værtsfil "www.virtualhost1.com.conf" til den virtuelle vært "www.virtualhost1.com."
sudo nano /etc/apache2/sites-available/www.virtualhost1.com.conf
Tilføj følgende indhold:
ServerAdmin [email protected] Servernavn www.virtualhost1.com DocumentRoot /var/www/html/www.virtualhost1.com ErrorLog $ {APACHE_LOG_DIR} /www.virtualhost1.com_error.log CustomLog $ {APACHE_LOG_DIR} /www.virtualhost1.com_access. log kombineret
Gem og luk filen.
Tilsvarende opretter du en virtuel værtsfil "www.virtualhost2.com.conf" til den virtuelle vært "www.virtualhost2.com."
sudo nano /etc/apache2/sites-available/www.virtualhost2.com.conf
Tilføj følgende indhold:
ServerAdmin [email protected] Servernavn www.virtualhost2.com DocumentRoot /var/www/html/www.virtualhost2.com ErrorLog $ {APACHE_LOG_DIR} /www.virtualhost2.com_error.log CustomLog $ {APACHE_LOG_DIR} /www.virtualhost2.com_access. log kombineret
Gem og luk filen.
Når du har oprettet de virtuelle værtsfiler, skal du aktivere en ny virtuel vært.
Du kan gøre dette ved at køre
sudo a2ensite www.virtualhost1.com.conf sudo a2ensite www.virtualhost2.com.conf
Endelig genstart Apache-tjenesten.
sudo /etc/init.d/apache2 genstart
Testning af virtuelle værter:
Du skal tilføje en værtindtastning på hver fjernbetjening eller lokalt system for at løse hjemmesiden efter navn.
Du kan gøre dette ved at redigere filen "/ etc / hosts".
sudo nano / etc / hosts
Tilføj følgende linjer:
192.168.1.227 www.virtualhost1.com 192.168.1.227 www.virtualhost2.com
Gem og luk filen.
Åbn din webbrowser og navigere til webadresserne "http://www.virtualhost1.com" og "http://www.virtualhost2.com."
Du skal se de prøve demo sider, som vi lavede tidligere.
www.virtualhost1.com demo side:
www.virtualhost2.com demo side:
Konklusion
Jeg håber, at dette indlæg vil hjælpe dig med at oprette virtuelle vært i Ubuntu. Der er ingen grænse for antallet af virtualhost Apache kan håndtere, så du kan oprette og hoste så mange websites, du ønsker.