25 hasznos Apache '.htaccess' trükk a webhelyek biztonságossá tételéhez és testreszabásához
A weboldalak életünk fontos részei. Az eszközöket szolgálják a vállalkozások bővítéséhez, a tudás megosztásához és még sok máshoz. Korábban csak statikus tartalom biztosítására korlátozódott, a dinamikus kliens- és szerveroldali szkriptnyelvek bevezetésével és a meglévő statikus nyelvek, például a html-ről a html5-re való folyamatos fejlesztésével, minden apró dinamika hozzáadásával lehetővé válik a webhelyek dinamikája, és ami megmaradt, az várhatóan hamarosan következik. jövő.
A webhelyekkel olyan egységre van szükség, amely képes megjeleníteni ezeket a webhelyeket a közönség hatalmas csoportja számára szerte a világon. Ezt az igényt azok a szerverek elégítik ki, amelyek biztosítják a weboldal elhelyezését. Ez magában foglalja a kiszolgálók listáját, például: Apache HTTP Server, Joomla és WordPress, amelyek lehetővé teszik webhelyeik tárolását.
Az, aki egy webhelyet szeretne üzemeltetni, létrehozhat saját helyi szervert, vagy kapcsolatba léphet a fent említettek bármelyikével, vagy bármely más szerveradminisztrátorral, hogy webhelyét tárolja. De a valódi probléma innentől kezdődik. A webhely teljesítménye elsősorban a következő tényezőktől függ:
- A webhely által felhasznált sávszélesség.
- Mennyire biztonságos a webhely a hackerek ellen.
- Optimizmus, amikor az adatbázison keresztüli adatkeresésről van szó
- Felhasználóbarát, ha a navigációs menük megjelenítéséről és a felhasználói felület további funkcióiról van szó.
Emellett számos tényező befolyásolja a szerverek sikerességét a webhelyek tárolásában:
- Egy adott webhelyen elért adattömörítés mértéke.
- Lehetőség több olyan ügyfél egyidejű kiszolgálására, akik ugyanazt vagy eltérő webhelyet kérnek.
- A weboldalakon bevitt bizalmas adatok védelme, mint például: e-mailek, hitelkártyaadatok és így tovább.
- Egyre több lehetőséget tesz lehetővé a webhely dinamikájának növelésére.
Ez a cikk a kiszolgálók által biztosított egyik ilyen funkcióval foglalkozik, amely segít a webhelyek teljesítményének javításában, valamint megvédi őket a rossz botoktól, hotlinkektől stb., azaz a „.htaccess” fájlt.
Mi az a .htaccess?
A htaccess (vagy hiperszöveges hozzáférés) azok a fájlok, amelyek lehetőséget biztosítanak a webhelytulajdonosoknak a szerverkörnyezeti változók és egyéb paraméterek szabályozására webhelyeik funkcionalitásának javítása érdekében. Ezek a fájlok a webhely könyvtárfájának bármely könyvtárában megtalálhatók, és funkciókat biztosítanak a könyvtárnak, valamint a benne lévő fájlok és mappák számára.
Mik ezek a funkciók? Nos, ezek a szerver direktívák, azaz azok a sorok, amelyek egy adott feladat végrehajtására utasítják a szervert, és ezek az irányelvek csak azokra a fájlokra és mappákra vonatkoznak, amelyek abban a mappában vannak, amelyben ez a fájl található. Ezek a fájlok alapértelmezés szerint el vannak rejtve, mivel az összes operációs rendszer és a webszerverek úgy vannak beállítva, hogy alapértelmezés szerint figyelmen kívül hagyják őket, de a rejtett fájlok láthatóvá tétele ezt a nagyon különleges fájlt jelenítheti meg. Hogy milyen típusú paramétereket lehet szabályozni, az a következő fejezetek témája.
Megjegyzés: Ha a .htaccess fájl a /apache/home/www/Gunjit/ könyvtárban van, akkor utasításokat fog adni a könyvtárban lévő összes fájlhoz és mappához, de ha ez a könyvtár tartalmaz egy másik mappát is, nevezetesen: /Gunjit/images/, amelyben ismét van egy másik .htaccess fájl, akkor a Az ebben a mappában található direktívák felülírják a fő .htaccess fájl (vagy a hierarchiában feljebb lévő mappában lévő fájl) által biztosított utasításokat.
Apache Server és .htaccess fájlok
Az Apache HTTP Server köznyelvi nevén Apache egy indián törzs apache-ról kapta a nevét, hogy tiszteletben tartsa kiváló képességeit a hadviselési stratégia terén. C/C++-ra és XML-re épülő, többplatformos webszerver, amely NCSA HTTPd szerveren alapul, és kulcsszerepe van a World Wide Web növekedésében és fejlődésében.
A UNIX rendszeren leggyakrabban használt Apache számos platformon elérhető, beleértve a FreeBSD-t, Linuxot, Windows-t, Mac OS-t, Novel Netware-t stb. 2009-ben az Apache lett az első szerver, amely több mint 100 millió webhelyet szolgál ki.
Az Apache szerver felhasználónként egy .htaccess fájlt tartalmaz a www/ könyvtárban. Bár ezek a fájlok rejtettek, de szükség esetén láthatóvá tehetők. A www/ könyvtárban számos mappa található, amelyek mindegyike a felhasználó vagy a tulajdonos nevén elnevezett webhelyhez tartozik. Ezen kívül minden mappában lehet egy .htaccess fájl, amely a fent leírtak szerint konfigurálta a fájlokat abban a mappában.
A htaccess fájl konfigurálása az Apache szerveren a következő…
Konfiguráció az Apache szerveren
Két eset lehet:
Weboldal tárolása saját szerveren
Ebben az esetben, ha a .htaccess fájlok nincsenek engedélyezve, engedélyezheti a .htaccess fájlokat a httpd.conf (alapértelmezett konfigurációs fájl) megnyitásával Apache HTTP démonhoz), és keresse meg a
<Directory "/var/www/htdocs">
És keresse meg azt a sort, amely azt mondja…
AllowOverride None
És javítsd ki.
AllowOverride All
Most, az Apache újraindításakor a .htaccess működni fog.
Webhely tárolása különböző tárhelyszolgáltató szerverén
Ebben az esetben jobb, ha konzultál a tárhely adminisztrátorával, ha engedélyezik a hozzáférést a .htaccess fájlokhoz.
25 „.htaccess” Az Apache webszerver trükkjei webhelyekhez
1. A mod_rewrite engedélyezése a .htaccess fájlban
A mod_rewrite opció lehetővé teszi az átirányítások használatát és a valódi URL elrejtését egy másik URL-re való átirányítással. Ez az opció nagyon hasznosnak bizonyulhat, mivel lehetővé teszi a hosszú és hosszú URL-ek rövid és könnyen megjegyezhető URL-ekre való cseréjét.
Ha engedélyezni szeretné a mod_rewrite elemet, csak gyakoroljon a következő sort a .htaccess fájl első soraként.
Options +FollowSymLinks
Ez az opció lehetővé teszi a szimbolikus hivatkozások követését, és így engedélyezi a mod_rewrite opciót a webhelyen. Az URL lecserélése rövid és ropogósra a későbbiekben.
2. A webhelyekhez való hozzáférés engedélyezése vagy letiltása
A htaccess fájl az order, allow és < gombokkal engedélyezheti vagy megtagadhatja a hozzáférést a webhelyhez vagy egy mappához vagy fájlokhoz abban a könyvtárban, amelyben elhelyezték. b>megtagadás kulcsszavakat.
Csak a 192.168.3.1 IP-hez enged hozzáférést
Order Allow, Deny
Deny from All
Allow from 192.168.3.1
OR
Order Allow, Deny
Allow from 192.168.3.1
Az itt található Rendelés kulcsszó azt a sorrendet adja meg, amelyben a hozzáférés engedélyezése, megtagadása történne. A fenti „Rendelés” utasítás esetében először az Engedélyezés, majd a megtagadás utasítások kerüljenek feldolgozásra.
Csak egy IP-címhez való hozzáférés megtagadása
Az alábbi sorok biztosítják a webhely elérését minden felhasználó számára, aki elfogad egy IP-címet: 192.168.3.1.
rder Allow, Deny
Deny from 192.168.3.1
Allow from All
OR
Order Deny, Allow
Deny from 192.168.3.1
3. Generáljon Apache Error dokumentumokat a különböző hibakódokhoz.
Néhány egyszerű sor segítségével kijavíthatjuk a hibadokumentumot, amely a szerver által generált különböző hibakódokon fut, amikor a felhasználó/kliens olyan oldalt kér, amely nem érhető el a webhelyen, ahogyan azt a legtöbben láttuk volna a „404 oldal nem található<”' oldalt a böngészőjükben. A „.htaccess” fájlok meghatározzák, hogy milyen műveleteket kell tenni ilyen hibaállapotok esetén.
Ehhez a következő sorokat kell hozzáadni a „.htaccess” fájlokhoz:
ErrorDocument <error-code> <path-of-document/string-representing-html-file-content>
Az "ErrorDocument" egy kulcsszó, a hibakód a következők bármelyike lehet: 401, 403, 404, 500 vagy bármely érvényes hibakód, és végül a „dokumentum elérési útja” a helyi gépen (ha saját helyi szervert használja) vagy a szerveren (ha használ bármely más szervere, amely az Ön webhelyét tárolja).
Példa :
ErrorDocument 404 /error-docs/error-404.html
A fenti sor beállítja, hogy az error-docs mappába helyezett "error-404.html" dokumentum megjelenjen arra az esetre, ha a szerver érvénytelen kérés esetén 404-es hibát jelentene. az ügyfél oldalára.
rrorDocument 404 "<html><head><title>404 Page not found</title></head><body><p>The page you request is not present. Check the URL you have typed</p></body></html>"
A fenti ábrázolás is helyes, amely egy szokásos html fájlt reprezentáló karakterláncot helyezi el.
4. Az Apache szerver környezeti változóinak beállítása/beállításának visszavonása
A .htaccess fájlban beállíthatja vagy hatástalaníthatja azokat a globális környezeti változókat, amelyek módosítását a kiszolgáló lehetővé teszi a webhelyek szolgáltatói számára. A környezeti változók beállításához vagy hatástalanításához hozzá kell adnia a következő sorokat a .htaccess fájlokhoz.
A környezeti változók beállítása
SetEnv OWNER “Gunjit Khera”
A környezeti változók hatástalanítása
UnsetEnv OWNER
5. Különféle MIME típusok meghatározása a fájlokhoz
A MIME (Multipurpose Internet Multimedia Extensions) azok a típusok, amelyeket a böngésző alapértelmezés szerint felismer bármely weboldal futtatásakor. Webhelye MIME-típusait .htaccess fájlokban határozhatja meg, így a szerver felismerheti és futtathatja az Ön által meghatározott különböző típusú fájlokat.
<IfModule mod_mime.c>
AddType application/javascript js
AddType application/x-font-ttf ttf ttc
</IfModule>
Itt a mod_mime.c a különböző MIME-típusok definícióinak vezérlésére szolgáló modul, és ha ez a modul telepítve van a rendszerére, akkor ezzel a modullal különböző MIME-típusokat határozhat meg a webhelyén használt különböző bővítményekhez. hogy a szerver megértse őket.
6. A feltöltések és letöltések méretének korlátozása az Apache-ban
A .htaccess fájlok segítségével szabályozhatja, hogy egy adott ügyfél mennyi adatot tölt fel vagy tölt le webhelyéről. Ehhez csak a következő sorokat kell hozzáfűznie a .htaccess fájlhoz:
php_value upload_max_filesize 20M
php_value post_max_size 20M
php_value max_execution_time 200
php_value max_input_time 200
A fenti sorok beállítják a maximális feltöltési méretet, a feladandó adatok maximális méretét, a maximális végrehajtási időt, azaz azt a maximális időt, amelyet a felhasználó a helyi gépén futtathat egy webhelyet, valamint a beviteli idő maximális időkorlátját.