Jak využít VirtualHost na svém počítači

Windows, Linux, Tipy & triky

Díky VirtualHostu můžete vyvíjet stránky na URL adrese, na které v budoucnu budou umístěny, i když doménu ještě ani nemáte koupenou. Ukážeme si jak vše nastavit a zprovoznit jak pro Windows, tak pro Linux.

Jak využít VirtualHost na svém počítači

Abychom na jedné IP adrese mohli mít více webů, musí se server při přijetí požadavku také rozhodovat podle URL adresy. Přesně k tomu slouží VirtualHost, který si můžeme nastavit na Apache serveru.

Zápis VirtualHost

VirtualHostů můžeme mít samozřejmě hodně, každý se nastaví pomocí následujícího zápisu.

<VirtualHost *:80>
  ServerName www.kutac.cz
  ServerAlias kutac.cz
  ServerAdmin abc@def.xyz
  DocumentRoot D:/www/kutac.cz/
</VirtualHost>

Jak vidíte, URL může být klidně existující. Pokud ale zrovna nepoužíváte WordPress, kde je trochu těžší změnit doménu, můžete s klidem zvolit adresu mujblog.loc apod. Důležité je zapsat URL s www jako alias, nebo opačně. Fungování s www, nebo naopak bez, není automatické.

ServerAdmin povinný není, případně můžeme uvést nějaký nesmyslný email. DocumentRoot je ale povinná položka a určuje, kde je web umístěn. Může to být úplně jinde než htdocs složka pro XAMPP nebo /var/www/html pro Ubuntu.

Umístění pro Linux

Tento zápis vložíme do nového souboru do složky /etc/apache2/sites-enabled/. Na názvu souboru nezáleží, protože Apache automaticky projde všechny. Nic nám ale nebrání, vložit více zápisů do jednoho souboru.

Toto se hodí převážně pro instalaci pomocí balíčků a skriptů. Nemusíme upravovat existující soubory, jednoduše si vytvoříme nový, který při odinstalování můžeme vymazat.

Umístění pro Windows

Ve Windows s nainstalovaným XAMPPem máme připraven soubor ve složce C:/xampp/apache/config/extra/httpd-vhosts.conf a do něj vložíme zápis tolikrát, kolikrát budeme potřebovat.

Někdy se mi stalo, že poté přestala fungovat základní adresa http://localhost/. Pokud se toto stane i vám, vložte na začátek souboru následující zápis

<VirtualHost *:80> 
  DocumentRoot "C:/xampp/htdocs" 
  ServerName localhost 
</VirtualHost>

Restart Apache

Aby Apache znova načetl konfigurační soubory, musíme jej restartovat. Na Windows jednoduše pomocí XAMPP Control Panel, na Linuxu restart provedeme příkazem

sudo service apache2 restart

Přesměrování domény na localhost

Je asi zřejmé, že počítač nebude hledat doménu kutac.cz, nebo jiné, na lokálním PC. Aby ale přesně to udělal, upravíme soubor hosts stejně jako v minulém článku Jak využít soubor hosts.

Do souboru C:\Windows\system32\etc\hosts na Windows, nebo /etc/hosts na Linuxu, vložíme následující řádky

127.0.0.1 kutac.cz
127.0.0.1 www.kutac.cz

# I případné adresy s příponou .loc musíme nasměrovat
127.0.0.1 mujblog.loc
127.0.0.1 www.mujblog.loc

Pokud používáme Windows, nesmíme zapomenout vymazat lokální DNS cache. Což provedeme v příkazové řádce zadáním

ipconfig -flushdns

To je vše, pokud máte problém se zprovozněním nebo se chcete podělit se zkušenostmi, můžete tak učinit v komentářích.

K tomuto článku již není možné přidávat další komentáře