A permalinkek (közvetlen hivatkozások) működéséhez elengedhetetlen a .htaccess fájl megléte (és persze a bekapcsolt “mod_rewrite” Apache modul a szerveren, de ez manapság alapfelszereltség minden Linux alapú tárhelyen). Ezek nélkül nem fognak működni a beszédes (szép) URL-ek (mint amilyen ezen poszt URL-je is a böngésző címsorában), tehát ha valamilyen oknál fogva sérülne vagy törlődne a szerverről a weboldalamhoz kapcsolódó .htaccess fájl, akkor ezen poszt elolvasására sem lenne lehetőség, helyette viszont kapnék egy 404-es (oldal nem található) hibaüzenetet. Ha sérül a .htaccess, akkor a kezdőlap mindig elérhető, az aloldalak/bejegyzések viszont nem, tehát a hiba könnyedén azonosítható.
Ha ezzel a problémával találjuk szembe magunkat, akkor először mindig érdemes fellépni FTP-re és megnézni, hogy a .htaccess fájl a helyén van-e és a megfelelő névvel szerepel-e. Fontos a pont megléte is! Ha a fájl létezik és a név is megfelelő, akkor töltsük le és ellenőrizzük a tartalmát.
Alapesetben a következőket kell látnunk:
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
Ha a .htaccess fájlunk üres, akkor a fentieket beillesztve szinte biztos, hogy orvosolható a probléma (persze ne felejtsük el a módosítás után visszatölteni a szerverre). Sok esetben egyéb sorokat is tartalmaz a fájl, hiszen rengeteg bővítmény van, ami a saját szabályait is itt helyezi el, ezeket ajánlott érintetlenül hagyni a helyes működéshez. Természetesen, ha nem létezik a fájl, akkor hozzuk létre a számítógépünkön a fenti tartalommal és töltsük vissza FTP-re.
A problémára sokszor megoldást jelenthet még a közvetlen hivatkozások ismételt elmentése is, tehát ha félünk az FTP-n történő módosításoktól, akkor lépjünk be a vezérlőpultra és nyissuk meg a “Beállítások/Közvetlen hivatkozások” szekciót. Az oldal alján a “Módosítások mentése” gombra kattintva automatikusan létrejön az esetlegesen hiányzó .htaccess, valamint a megfelelő szabályok is beírásra kerülnek.
Tapasztalataim szerint legtöbbször a felhasználó törli teljesen véletlenül a .htaccess fájlt FTP-ről, egyéb esetekben pedig egy hibásan működő bővítmény kuszálja össze a tartalmat, így téve lehetetlenné az URL átírás helyes működését.