Flera domännamn på samma webserver
Här kan du som utvecklare i LAMP (Linux, Apache, MySQL, PHP) se hur man sätter upp vhosts.
vhost används när du vill koppla flera domänadresser till en och samma server som bara har en IP adress.
Till exempel kanske du vill ha www.exempel1.com till katalogen /var/www/www.exempel1.com
och www.exempel2.com till /var/www/www.exempel2.com
Jag har tidigare skrivit om hur du sätter upp vhost i MacOS. Det är exakt samma princip i Ubuntu, bara lite andra filnamn.
Filen hosts
Börja med att sätta upp dina domänadresser i hosts filen.
sudo gedit /etc/hosts
Lägg till
127.0.0.1 www.example1.com 127.0.0.1 www.example2.com
Konfigurera vhost
Nästa steg är att definiera själva vhost konfigurationen.
sudo gedit /etc/apache2/sites-enabled/000-default.conf
Lägg till
<VirtualHost *:80> ServerName www.example1.com DocumentRoot "/var/www/www.example1.com" ServerAdmin my.email@domain.com <Directory "/var/www/www.example1.com"> MultiviewsMatch Any AllowOverride All Options Indexes MultiViews FollowSymLinks Require all granted </Directory> </VirtualHost> <VirtualHost *:80> ServerName www.example2.com DocumentRoot "/var/www/www.example2.com" ServerAdmin my.email@domain.com <Directory "/var/www/www.example2.com"> MultiviewsMatch Any AllowOverride All Options Indexes MultiViews FollowSymLinks Require all granted </Directory> </VirtualHost>
Starta om Apache
sudo /etc/init.d/apache2 restart
Felmeddelande
Om du får det här meddelandet:
”Could not reliably determine the server’s fully qualified domain name”
Gör då så här:
sudo gedit /etc/apache2/httpd.conf
Filen är antagligen tom. Se till att du har:
ServerName localhost
i filen och starta sedan om Apache igen.
Skapa katalogerna
/var/www/www.example1.com /var/www/www.example2.com
Sätt rättigheter
chmod -R 755 /var/www/www.example1.com chmod -R 755 /var/www/www.example2.com
HTML fil
Skapa en html-fil i vardera katalogen: index.html och skriv något i den.
Testa
Surfa till www.example1.com och se din html-fil.