A .htaccess egy egyszerű szöveges konfigurációs fájl, amellyel az Apache webszerver működését könyvtáranként módosíthatja, a szerver központi beállításaihoz való hozzáférés nélkül. A webszerver minden kérésnél beolvassa, ezért a módosítás azonnal érvényes, újraindításra nincs szükség.
Hol működik?
A webtárhely csomagjainkon Apache webszerver fut, és a cPanel tárhelyen is használhatók a .htaccess szabályok. A statikus tárhelyen viszont Nginx szolgálja ki a fájlokat, amely a .htaccess fájlt nem olvassa, ott a benne lévő szabályok hatástalanok.
A fájl a weboldal gyökérkönyvtárában (a domain célkönyvtárában) az egész weboldalra érvényes, egy alkönyvtárban elhelyezve pedig csak arra a könyvtárra és az alatta lévőkre. Egy alkönyvtár .htaccess fájlja felülírhatja a feljebb lévő szabályokat.
Mire használható?
- Átirányítás: régi címek átirányítása újakra,
http://helyetthttps://,wwwnélküli címrőlwww-s címre vagy fordítva. - URL-átírás: a WordPress és sok más tartalomkezelő a
mod_rewriteszabályaival állítja elő a „szép”, paraméter nélküli címeket. - Hozzáférés-korlátozás: könyvtár jelszavas védelme, IP címek kitiltása, bizonyos fájltípusok letiltása.
- Saját hibaoldalak: például egy egyedi 404-es oldal megjelenítése.
- Gyorsítótárazás és tömörítés: a böngészőnek küldött gyorsítótár-fejlécek beállítása, ami gyorsítja a visszatérő látogatók oldalbetöltését.
Néhány gyakori példa
Egy régi oldal végleges (301-es) átirányítása:
Redirect 301 /regi-oldal.html /uj-oldal/
A könyvtárlista kikapcsolása, hogy egy index fájl nélküli mappa tartalma ne legyen böngészhető:
Options -Indexes
Saját 404-es hibaoldal:
ErrorDocument 404 /404.html
Hogyan szerkessze?
- Csatlakozzon a tárhelyhez FTP-n, vagy nyissa meg a kezelőfelület fájlkezelőjét.
- Mivel a fájlnév ponttal kezdődik, sok program rejtett fájlként kezeli: kapcsolja be a rejtett fájlok megjelenítését.
- Módosítás előtt mentse le a meglévő fájlt, hogy hiba esetén vissza tudja állítani.
- A fájlt sima szövegszerkesztővel, UTF-8 kódolással mentse; a neve pontosan
.htaccesslegyen,.txtkiterjesztés nélkül. - Mentés után nyissa meg a weboldalt, és próbálja ki a módosított címeket is.
Gyakori hibák
- 500 Internal Server Error: egy elírt vagy a szerveren nem engedélyezett utasítás miatt az egész oldal elérhetetlenné válik. Állítsa vissza a mentett fájlt, vagy törölje az utoljára beírt sorokat. WordPress esetén a .htaccess alapállapotba állítása is segít.
- PHP beállítások: a
php_valueésphp_flagsorok PHP-FPM mellett hibát okoznak. A PHP paramétereket a .user.ini fájlban állítsa be. - Átirányítási hurok: ha két szabály egymásra irányít (vagy egy Cloudflare-beállítás és a HTTPS-kényszerítés ütközik), a böngésző „túl sok átirányítás” hibát ad.
- Felülírt WordPress-blokk: a
# BEGIN WordPressés# END WordPressközötti részt a WordPress maga kezeli; a saját szabályait e blokkon kívül, elé írja.
Átirányítási mintákat a blogunkon talál: Htaccess átirányítás: gyakorlati útmutató a szabályos beállításhoz.