Kořenový adresář (root) www v Nette

Aktualizováno: 2. 11. 2014, datum vydání: 31. 1. 2013

httpd.conf

Příklady ve frameworku nette počítají s tím, že hlavním adresářem pro umístění www stránek bude adresář www. Kořenový adresář lze nastavit v konfiguračním souboru httpd.conf pomocí direktivy DocumentRoot serveru Apache.

Řešení v nette

Ne vždy máte možnost si tento soubor upravit. Možnosti řešení tohoto problému jsou popsány v FAQ nette v článku Hosting neumožňuje změnu root složky. Jsou dvě možnosti, jak situaci řešit: přesměrování pomocí mod_rewrite, nebo změna adresářové struktury s úpravou nastavených cest. Funkční řešení je také popsáno v komentáři HappyFace.

Vytvoříme soubor .htaccess a umístíme ho do rootu webu a dáme tam kód dle HappyFace:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule ^(.*)$ www/$1 [L]
</IfModule>

či kód dle Davida Grudla:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$
RewriteRule ^$ www/ [L]
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$
RewriteRule (.*) www/$1 [L]

Další články