Autor Zpráva
McRoyal
Profil
Mám pro každou web. podsložku vlastní chybový soubor 404.html
Je popsaný v .htaccess dané složky takto:

ErrorDocument 404 /404.html

Vše bylo fajn, ale udělal jsem upgrade a novou instalaci Apache (2.4.10 a PHP 5.3.29), a teď mi při chybě 404 hledá 404.html v DocumentRootu, namísto v dané složce. Takže tu 404.html nenajde.
Musím upravit zápis v .htaccess takto - pak to jde:
ErrorDocument 404 /podslozkaXYZ/404.html

Jenže já to upravovat nechci. Jak docílít opět toho, aby se 404.html hledala ve stejné složce ve které je i soubor .htaccess?
Kajman
Profil
Pomůže odstranění lomítka?
Marschmallow
Profil
Vymaž to lomítko na začátku. Díky němu se vracíš do rootu. Takže stačí pouhý zápis:
ErrorDocument 404 404.html
Nyní by měla fungovat relativní cesta k .htaccess a 404.html.

Kajman:
Aha, předběhl jsi mě ;)
McRoyal
Profil
Kajman:
Pomůže odstranění lomítka?

když odstraním lomítko, tak mi to v prohlížeči vypíše pouze "404.html" a nezobrazí to ten samotný soubor.
Kajman
Profil
Podle manuálu to nové chování je asi korektní. Lokální soubory se uvozují tím lomítkem a to lomítku ukazuje do DocumentRootu. Takže to vypadá na špatné chování před upgradem.
Davex
Profil
McRoyal:
V uvedeném případě se Apache 2.2 a 2.4 chovají totožně. Nemáš tam ještě nějaká přepisovací pravidla mod_rewrite, která přepisují by měla přepisovat tu chybovou stránku do podadresáře? Chování mod_rewrite se totiž v Apache 2.4 docela dost změnilo a v posledních verzích se opravovalo i pár chyb.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: