15 Korisni isječci .htaccess za vašu WordPress stranicu
Imati dobro konfigurirana .htaccess datoteka je ključno ako želite povećati sigurnost i smanjiti ranjivosti na vašoj WordPress stranici. Obično je glavni cilj stvaranja a prilagođena .htaccess datoteka je spriječiti hakiranje vaše web-lokacije, ali je i odličan način za upravljanje preusmjeravanjima i upravljanje zadacima vezanim uz predmemoriju.
.htaccess je konfiguracijsku datoteku koristi se na Apache web poslužiteljima. Većina WordPress stranica izvoditi na Apache poslužitelju, iako je mali dio pokreće ga Nginx. U ovom članku možete pronaći a zbirka isječaka .htaccess koda, većina od kojih možete koristiti kako bi osigurali svoje web stranice, dok ostatak provodi druge korisne značajke.
Ne zaboravi izradite sigurnosnu kopiju .htaccess datoteke prije uređivanja tako da uvijek možete povratak na prethodnu verziju ako nešto pođe po zlu.
A, ako ste netko tko radije ne dodiruje konfiguracijske datoteke, preporučujem vam BulletProof Sigurnost dodatak koji je najpouzdaniji (i vjerojatno najstariji) besplatni .htaccess sigurnosni dodatak na tržištu.
Stvorite zadani WP .htaccess
.htaccess radi na po adresi što znači da svaki direktorij može imati vlastitu .htaccess datoteku. To se lako može dogoditi da vaš WordPress stranice još nema datoteku .htaccess. Ako ne pronađete datoteku .htaccess u korijenskom direktoriju stvoriti praznu tekstualnu datoteku i ime .htaccess
.
Dolje možete pronaći default .htaccess WordPress koristi. Kad god vam je potreban ovaj kod, možete ga brzo potražiti u WordPress Codexu. Imajte na umu da postoji druga .htaccess za WP Multisite.
# BEGIN WordPressRewriteEngine Na RewriteBase / RewriteRule ^ index php $ - [L] RewriteCond% REQUEST_FILENAME! -F RewriteCond% REQUEST_FILENAME! -D RewriteRule. /index.php [L] # END WordPress
Redovi koji počinju s #
su komentari. Nemojte ništa uređivati između redaka # BEGIN WordPress
i # END WordPress
. Dodajte prilagođena pravila .htaccess ispod ovih zadanih pravila.
U ovom članku možete pronaći sve isječke koda idite na jezgru .htaccess datoteke nalazi se u korijenskom direktoriju.
1. Zabranite pristup svim .htaccess datotekama
Kôd u nastavku uskraćuje pristup za sve .htaccess datoteke koje ste instalirali u WordPress. Na taj način možete spriječiti ljude da vide vaše konfiguracije web poslužitelja.
# Zabranjuje pristup svim .htaccess datotekamaRed Allow, Deny Deny od svih Zadovolji sve
2. Zaštitite WP konfiguraciju
wp-config.php
datoteka sadrži sve WP konfiguracije, uključujući prijavu i lozinku baze podataka. Možete to odbiti od svih ili dati dopuštenje administratorima da mu pristupaju.
Ako odaberete potonje komentirajte # Dopusti od xx.xx.xx.xxx
redak (uklonite #
od početka retka) i umetnite administratorsku IP adresu umjesto xx.xx.xx.xxx
.
# Štiti wp-configNarudžba Dopusti, Odbij # Dopusti od xx.xx.xx.xxx # Dopusti od yy.yy.yy.yyy Odbij od
3. Spriječiti XML-RPC DDoS napad
WordPress podržava XML-RPC prema zadanim postavkama, što je sučelje koje omogućuje daljinsko objavljivanje moguće. Međutim, iako je to odlična značajka, to je i jedna od najvećih sigurnosnih ranjivosti WP-a kao što hakeri mogu iskoristiti ga za DDoS napade.
Ako ne želite koristiti ovu značajku, bolje je da to učinite onemogućite ga. Kao i prije, možete dodajte iznimke komentiranjem # Dopusti od xx.xx.xx.xxx
redak i dodavanje IP adresa vaših administratora.
# Štiti XML-RPC, sprečava DDoS napadNarudžba odbija, dopusti # Dopusti od xx.xx.xx.xxx # Dopusti od yy.yy.yy.yyy Odbij iz svih
4. Zaštitite svoje admin područje
To je također dobra ideja zaštitite admin područje davanjem pristupa samo administratorima. Evo, ne zaboravi dodajte barem jedan “dopustiti” izuzetak inače nećete moći pristupiti administratoru.
# Štiti admin područje od IP AuthUserFile / dev / null AuthGroupFile / dev / null AuthName "WordPress Admin Kontrola pristupa" AuthType BasicNarudžba odbija, dopusti odbijanje od svih Dopusti iz xx.xx.xx.xxx Dopusti od yy.yy.yy.yyy
5. Spriječite popis direktorija
Većina WordPress stranica ne onemogućuje unos direktorija, što znači da svatko može pregledajte njihove mape i datoteke, uključujući prijenos medija i datoteke dodataka. Nepotrebno je reći da je ovo velika sigurnosna ranjivost.
U nastavku možete vidjeti kako a izgleda tipičan popis WordPress direktorija.
Srećom, samo trebaš jedan redak koda da biste blokirali tu značajku. Ovaj će isječak koda biti vratite poruku o pogrešci 403 svima koji žele pristupiti vašim direktorijima.
# Spriječava unos direktorija Opcije -Indeksi
6. Spriječite popisivanje korisničkih imena
Ako su WP permalinks omogućeni, vrlo je lako nabrojite korisnička imena pomoću arhiva autora. Otkrivena korisnička imena (uključujući korisničko ime administratora) mogu se koristiti u napadima silom.
Umetnite donji kôd u svoju datoteku .htaccess spriječiti popisivanje korisničkih imena.
# Sprječava popisivanje korisničkog imena RewriteCond% QUERY_STRING author = d RewriteRule ^ /? [L, R = 301]
7. Blokirajte spameri i robote
Ponekad to poželiš ograničiti pristup s određenih IP adresa. Ovaj isječak koda omogućuje jednostavan način blokiranja pošiljatelja neželjene pošte i robota koje već znate.
# Blokira spameri i botoveNarudžba Dopusti, odbij Deny iz xx.xx.xx.xxx Odbij od yy.yy.yy.yyy Dopusti od svih
8. Spriječite povezivanje slike
Iako nije prijetnja sigurnosti, povezivanje slika je još uvijek dosadna stvar. Ljudi ne samo koristite svoje slike bez vašeg dopuštenja ali to čak i rade po vašoj cijeni. S ovih nekoliko redaka koda, možete zaštititi svoje stranice od hotlinking slike.
# Sprječava vruće povezivanje slike RewriteEngine na RewriteCond% HTTP_REFERER! ^ $ RewriteCond% HTTP_REFERER! ^ Http (s)?: // (www.)? Yourwebsite.com [NC] RewriteCond% HTTP_REFERER! ^ Http ( s)?: // (www.)? yourwebsite2.com [NC] RewriteRule (jpe? g? | png | gif | ico | pdf | flv | swf | gz) $ - [NC, F, L]
9. Ograničite izravan pristup plugin & php datotekama teme
Može biti opasno ako netko izravno poziva vaše dodatke i datoteke s temama, da li se to događa slučajno ili od strane zlonamjernog napadača. Ovaj isječak koda dolazi iz tvrtke Acunetix za sigurnost web-mjesta; više o ovoj ranjivosti možete pročitati u njihovom blogu.
# Ograničava pristup PHP datotekama iz direktorija dodataka i tema RewriteCond% REQUEST_URI! ^ / Wp-content / plugins / file / to / excelfp rewriteCond% REQUEST_URI! ^ / Wp-content / plugins / direktorij / / exclude / RewriteRule wp-content / plugins / (. * php) $ - [R = 404, L] RewriteCond% REQUEST_URI! ^ / wp-content / themes / file / to / exclude REQUEST_URI! ^ / Wp-content / themes / direktorij / do / isključi / RewriteRule wp-content / themes / (. * Php) $ - [R = 404, L]
10. Postavite trajna preusmjeravanja
Lako možete rukovati stalnim preusmjeravanjima s .htaccess. Prvo morate dodati stari URL, zatim slijedite novi URL koja ukazuje na stranicu na koju želite preusmjeriti korisnika.
# Stalna preusmjeravanja Redirect 301 / oldurl1 / http://yoursite.com/newurl1 Redirect 301 / oldurl2 / http://yoursite.com/newurl2
11. Posjetite posjetitelje na stranicu za održavanje
Ovdje smo detaljno pisali o ovoj tehnici. Trebaš zasebnu stranicu za održavanje (maintenance.html
u primjeru) za to .htaccess pravilo. Ovaj kod stavlja vašu WordPress stranicu u način održavanja.
# Preusmjerava na stranicu za održavanjeRewriteEngine na RewriteCond% REMOTE_ADDR! ^ 123 456 789 RewriteCond% REQUEST_URI! /Maintenance.html$ [NC] RewriteCond% REQUEST_URI! (Jpe? G? | Png | gif ] [NC] RewriteRule. * /Maintenance.html [R = 503, L]
12. Ograničiti svaki pristup WP-u
/ Wp-obuhvaća /
mapa sadrži osnovne WordPress datoteke potrebne za rad CMS-a. Nema sadržaja, dodataka, tema ili bilo čega drugog što korisnik želi pristupiti ovdje. Da bi se ojačala sigurnost, najbolje je ograničiti pristup.
# Blokira sve wp-uključuje mape i datotekeRewriteEngine Na RewriteBase / RewriteRule ^ wp-admin / uključuje / - [F, L] RewriteRule! ^ Wp-includes / - [S = 3] RewriteRule ^ wp-includes / [^ /] + php $ - [F, L] RewriteRule ^ wp-includes / js / tinymce / langs /.+ php - [F, L] RewriteRule ^ wp-includes / theme-compat / - [F, L]
13. Blokiranje skriptiranja među web-lokacijama (XSS)
Sljedeći isječak koda je iz WP Mixa i štiti vašu web-lokaciju neke uobičajene XSS napade, naime injekcije skripti i pokušaji promjene globalnih i zahtjevnih varijabli.
# Blokira neke XSS napadeRewriteCond% QUERY_STRING (\ _ |% 3E) [NC, OR] RewriteCond% QUERY_STRING GLOBALS (= | \ _ [0-9A-Z] 0,2) [ILI] RewriteCond% QUERY_STRING _REQUEST (= | \ _ | [0-9A-Z] 0,2) RewriteRule. * Index.php [F, L]
14. Omogućite predmemoriranje preglednika
Kao što sam već spomenuo, .htaccess nije dobar samo zbog sigurnosnih razloga i preusmjeravanja, ali vam može pomoći upravljanje predmemorijom. Isječak koda u nastavku je iz Elegantne teme i omogućuje predmemoriranje preglednika omogućavanjem posjetiteljima spremanje određenih vrsta datoteka, tako da sljedeći put kada ih posjete ne moraju ih ponovno preuzeti.
# Omogućuje predmemoriranje preglednikaExpiresByType image / jpeg "pristup 1 godini" ExpiresByType image / gif "pristup 1 godina" ExpiresByType image / png "pristup 1 godina" ExpiresByType text / css "pristup 1 mjesec" ExpiresByType text / css "pristup 1 mjesec" ExpiresByType application / pdf "pristup 1 mjesec" ExpiresByType tekst / x-javascript "pristup 1 mjesec" ExpiresByType application / x-shockwave-flash "pristup 1 mjesec" ExpiresByType image / x-icon "pristup 1 godinu" ExpiresDefault "pristup 2 dana"
15. Postavite prilagođene stranice pogrešaka
Možete koristiti .htaccess za postavljanje prilagođenih stranica pogrešaka na WordPress stranici. Da bi ova metoda funkcionirala, također trebate stvorite prilagođene stranice pogrešaka (custom-403.html
, custom-404.html
u primjeru) i učitajte ih u korijensku mapu.
Možete postaviti prilagođenu stranicu pogreške za bilo koji kôd statusa HTTP pogreške (Statusni kodovi 4XX i 5XX) koje želite.
# Postavlja stranice prilagođene pogreške ErrorDocument 403 /custom-403.html ErrorDocument 404 /custom-404.html