"404 Page not found" chyba při kliknutí na kterýkoliv odkaz
- Last revised:
- Čtvrtek, 12 Květen 2011
Answer
Domovská stránka funguje a SEF URL adresy jsou generovány, ale když kliknu na kterýkoliv odkaz, objeví se "404 - Page not found".
1. ujistěte se, že existuje .htaccess soubor
Ujistěte se, že .htaccess soubor existuje v kořenovém adresáři stránky. Pokud ne, můžete ho vytvořit přejmenováním již existujícího souboru, htaccess.txt, který je uložen v kořenovém adresáři Joomly.
Ujistěte se také, že .htaccess soubor je zpracováván na serveru, protože některé servery můžou ignorovat soubor. Můžete to otestovat, a to tak, že přidáte nesprávný řádek do souboru. Když to uděláte a zkusíte se připojit na stránky, mělo by Vám to vrátit 500 Internal Server Error. V takovém případě, je to v pořádku. Pokud se nic nestane, s největší pravděpodobností je soubor ignorován a musíte kontaktovat správce Vašeho serveru, aby povolil užívání .htaccess souboru nebo vložil potřebné pokyny v globálním nastavení serveru.
2. Kontrola pravidel přepisování .htaccess souboru
Potom se ujistěte, že direktivy RewriteCond a RewriteRule nejsou okomentované v sekci třetích stran modulů SEF (většinou to je na konci souboru .htaccess). Toto platí pouze pro Joomlu 1.0.x a JoomSEF 2.x. V Joomle 1.5.x je pouze jeden soubor pravidel, který není okomentovaný.
3. Kontrola a nastavení RewriteBase hodnoty
Nakonec zkontrolujte, zda máte nastavenou hodnotu RewriteBase tak, aby odpovídala kořenové adrese Vaší nainstalované Joomly na serveru.
To znamená, cesta do kořenového adresáře bez názvu serveru - např. když je Vaše Joomla nainstalována jako http://www.domain.org/somedir/myjoomlaroot, tak správné nastavení bude RewriteBase /somedir/myjoomlaroot). Pokud jsou Vaše stránky umístěny v kořenovém adresáři domény, RewriteBase může buď zůstat okomentována a nebo mít hodnotu. Nicméně, některé servery dokonce nevyžadují komentáře a nastavení explicitní hodnoty ( pak to jednoduše nastavte na RewriteRule /).
4. Když používám JoomFish, zkontrolujte zda je JfRouter vypnutý
Když používáte JoomFish a JoomSEF současně, může nastat konflikt mezi jejich routery. K vyřešení stačí pouze vypnout JfRouter.
Více informací najdete také v JoomSEF dokumentaci.