Startpagina » WordPress » 15 Handige .htaccess-fragmenten voor uw WordPress-site

    15 Handige .htaccess-fragmenten voor uw WordPress-site

    Een .... hebben goed geconfigureerd .htaccess-bestand is cruciaal als je dat wilt verhoog de beveiliging en verminder kwetsbaarheden op uw WordPress-site. Meestal is het hoofddoel van het maken van een aangepast .htaccess-bestand is om te voorkomen dat uw site wordt gehackt, maar het is ook een uitstekende manier om omleidingen te verwerken en cache-gerelateerde taken te beheren.

    .htaccess is a configuratiebestand gebruikt op Apache-webservers. De meeste WordPress-sites uitvoeren op een Apache-server, hoewel een klein deel is mogelijk gemaakt door Nginx. In dit artikel vindt u een verzameling van .htaccess-codefragmenten, waarvan u de meeste kunt gebruiken om uw website te beveiligen terwijl de rest andere nuttige functies implementeert.

    Vergeet het niet Maak een back-up van het .htaccess-bestand voordat je het bewerkt, zodat je het altijd kunt doen keer terug naar de vorige versie als er iets misgaat.

    En, als u iemand bent die liever geen configuratiebestanden aanraakt, raad ik u het volgende aan BulletProof Security plugin die het meest betrouwbaar is (en waarschijnlijk de oudste) gratis .htaccess-beveiligingsinvoegtoepassing op de markt.

    Maak de standaard WP.htaccess

    .htaccess werkt op een per directory wat betekent dat elke directory zijn eigen .htaccess-bestand kan hebben. Het kan gemakkelijk gebeuren dat uw WordPress-site heeft nog geen .htaccess-bestand. Als u geen .htaccess-bestand in uw hoofdmap vindt maak een leeg tekstbestand aan en noem het maar .htaccess.

    Hieronder vindt u de standaard .htaccess WordPress gebruikt. Wanneer u deze code nodig heeft, kunt u deze snel opzoeken in de WordPress Codex. Merk op dat er een andere .htaccess is voor WP Multisite.

     # BEGIN WordPress  RewriteEngine On RewriteBase / RewriteRule ^ index \ .php $ - [L] RewriteCond% REQUEST_FILENAME! -F RewriteCond% REQUEST_FILENAME! -D RewriteRule. /index.php [L]  # END WordPress 

    De regels die beginnen met # zijn opmerkingen. Bewerk niets tussen de lijnen # BEGIN WordPress en # END WordPress. Voeg uw aangepaste .htaccess-regels toe onder deze standaardregels.

    Alle codefragmenten die u in dit artikel vindt ga naar het kern .htaccess bestand gevonden in uw hoofdmap.

    1. Weigeren toegang tot alle .htaccess-bestanden

    De onderstaande code ontzegt de toegang naar alle .htaccess-bestanden die u in uw WordPress hebt geïnstalleerd. Op deze manier kunt u voorkomen dat mensen uw zien webserverconfiguraties.

     # Ontkent toegang tot alle .htaccess-bestanden  Volgorde toestaan, Weigeren weigeren van allen Voldoe aan iedereen  

    2. Bescherm uw WP-configuratie

    De wp-config.php bestand bevat al uw WP-configuraties, inclusief uw database login en wachtwoord. Je kunt het van iedereen ontkennen of geef beheerders toestemming om er toegang toe te hebben.

    Als je voor het laatste kiest commentaar uit de # Toestaan ​​van xx.xx.xx.xxx regel (verwijderen # vanaf het begin van de regel) en voer het IP-adres van de beheerder in in plaats van xx.xx.xx.xxx.

     # Beschermt wp-config  Volgorde toestaan, Weigeren # Toestaan ​​van xx.xx.xx.xxx # Toestaan ​​van yy.yy.yy.yyy Weigeren van alles  

    3. Voorkom XML-RPC DDoS-aanval

    WordPress ondersteunt XML-RPC standaard is dat een interface die publiceren op afstand mogelijk maakt mogelijk. Hoewel het een geweldige functie is, is het ook een van WP's grootste beveiligingslekken als hackers misbruiken voor DDoS-aanvallen.

    Als je deze functie niet wilt gebruiken, is het beter om gewoon te doen schakel het uit. Net als voorheen, kunt u voeg uitzonderingen toe door uit te zeggen de # Toestaan ​​van xx.xx.xx.xxx regel en het toevoegen van de IP's van uw beheerder (s).

     # Beschermt XML-RPC, voorkomt dat DDoS-aanvallen  Volgorde weigeren, Toestaan ​​# Toestaan ​​van xx.xx.xx.xxx # Toestaan ​​van yy.yy.yy.yyy Weigeren van alles  

    4. Bescherm uw admingebied

    Het is ook een goed idee om dit te doen bescherm het admingebied door alleen toegang te geven aan beheerders. Hier, vergeet niet om voeg er tenminste één toe “Toestaan” uitzondering anders heb je helemaal geen toegang tot je beheerder.

     # Beschermt admin gebied door IP AuthUserFile / dev / null AuthGroupFile / dev / null AuthName "WordPress Admin Access Control" AuthType Basic  Volgorde weigeren, Weigeren van toestaan ​​toestaan ​​van xx.xx.xx.xxx Toestaan ​​van yy.yy.yy.yyy  

    5. Vermijd directory lijst

    De meeste WordPress-sites schakelen directory listing niet uit, wat betekent dat iedereen dat kan bladeren door hun mappen en bestanden, inclusief media-uploads en plug-inbestanden. Het is onnodig om te zeggen dat dit een enorm beveiligingsprobleem is.

    Hieronder ziet u hoe a typische WordPress directory lijst ziet eruit als.

    Gelukkig heb je alleen nodig een regel code om deze functie te blokkeren. Dit codefragment zal stuur een 403 foutmelding terug voor iedereen die toegang wil tot uw mappen.

     # Voorkomt directory lijst Opties -Indexen 

    6. Voorkomen dat de opsomming van de gebruikersnaam voorkomt

    Als WP-permalinks zijn ingeschakeld, is dat vrij eenvoudig een opsomming van gebruikersnamen het gebruik van de auteursarchieven. De geopenbaarde gebruikersnamen (inclusief de gebruikersnaam van de beheerder) kunnen dan worden gebruikt in brute kracht aanvallen.

    Voer de onderstaande code in uw .htaccess-bestand in de opsomming van de gebruikersnaam voorkomen.

     # Voorkomt opsomming van de gebruikersnaam RewriteCond% QUERY_STRING author = d RewriteRule ^ /? [L, R = 301] 

    7. Blokkeer spammers en bots

    Soms wilt u dat misschien Beperk toegang vanaf bepaalde IP-adressen. Dit codefragment biedt een eenvoudige manier om spammers en bots die u al kent te blokkeren.

     # Blokkeert spammers en bots  Volgorde toestaan, Weigeren weigeren van xx.xx.xx.xxx Weigeren van yy.yy.yy.yyy  Toestaan ​​van iedereen 

    8. Voorkom afbeelding-hotlinking

    Hoewel dit geen beveiligingsrisico is, afbeelding hotlinken is nog steeds een vervelend iets. Mensen doen dat niet alleen gebruik uw afbeeldingen zonder uw toestemming maar ze doen het zelfs op uw kosten. Met deze paar regels code kunt u uw site beschermen tegen hotlinking van afbeeldingen.

     # Voorkomt afbeelding hotlinking RewriteEngine op 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. Beperk directe toegang tot PHP-bestanden voor plug-ins en thema's

    Het kan gevaarlijk zijn als iemand belt direct uw plug-in en themabestanden, of het per ongeluk gebeurt of door een kwaadwillende aanvaller. Dit codefragment komt van het Acunetix-websitebeveiligingsbedrijf; je kunt meer over dit beveiligingslek lezen in hun blogpost.

     # Beperkt de toegang tot PHP-bestanden van plug-in en themamappen RewriteCond% REQUEST_URI! ^ / Wp-content / plugins / file / to / exclude \ .php RewriteCond% REQUEST_URI! ^ / Wp-content / plugins / directory / to / exclude / RewriteRule wp-content / plugins / (. * \. php) $ - [R = 404, L] RewriteCond% REQUEST_URI! ^ / wp-content / themes / file / to / exclude \ .php RewriteCond% REQUEST_URI! ^ / Wp-content / themes / directory / to / exclude / RewriteRule wp-content / themes / (. * \. Php) $ - [R = 404, L] 

    10. Stel permanente omleidingen in

    Dat kun je gemakkelijk doen omgaan met permanente omleidingen met .htaccess. Eerst moet je het toevoegen oude URL, volg dan de nieuwe URL die verwijst naar de pagina waarnaar u de gebruiker wilt doorsturen.

     # Permanente omleidingen Omleiden 301 / oldurl1 / http://yoursite.com/newurl1 Doorverwijzing 301 / oldurl2 / http://yoursite.com/newurl2 

    11. Stuur bezoekers naar een onderhoudspagina

    We schreven over deze techniek hier in detail. Je hebt een nodig aparte onderhoudspagina (maintenance.html in het voorbeeld) om deze .htaccess-regel te laten werken. Deze code plaatst uw WordPress-site in onderhoudsmodus.

     # Omleidingen naar onderhoudspagina  RewriteEngine on RewriteCond% REMOTE_ADDR! ^ 123 \ .456 \ .789 \ .000 RewriteCond% REQUEST_URI! /Maintenance.html$ [NC] RewriteCond% REQUEST_URI! \. (Jpe? G? | Png | gif ) [NC] RewriteRule. * /Maintenance.html [R = 503, L]  

    12. Beperk alle toegang tot WP omvat

    De / Wp-includes / map bevat de kern WordPress-bestanden die nodig zijn om het CMS te laten werken. Er zijn geen inhoud, plug-ins, thema's of iets anders waar een gebruiker hier toegang toe wil hebben. Dus om de veiligheid te verbeteren, is het het beste om dat te doen beperk alle toegang tot het.

     # Blokkeert alle wp-bevat mappen en bestanden  RewriteEngine On RewriteBase / RewriteRule ^ wp-admin / includes / - [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. Cross-site scripting (XSS) blokkeren

    Het volgende codefragment komt van WP Mix en beschermt uw site tegen enkele veelvoorkomende XSS-aanvallen, namelijk scriptinjecties en pogingen om globale en verzoekvariabelen te wijzigen.

     # Blokkeert enkele XSS-aanvallen  RewriteCond% QUERY_STRING (\ |% 3E) [NC, OF] RewriteCond% QUERY_STRING GLOBALS (= | \ [| \% [0-9A-Z] 0,2) [OF] RewriteCond% QUERY_STRING  _REQUEST (= | \ [| \% [0-9A-Z] 0,2) RewriteRule. * Index.php [F, L]  

    14. Schakel browsercaching in

    Zoals ik eerder al zei, is .htaccess niet alleen goed voor veiligheidsredenen en omleidingen, maar het kan u ook helpen beheer de cache. Het onderstaande codefragment is van Elegant Themes en het maakt browsercaching mogelijk door bezoekers in staat te stellen bewaar bepaalde soorten bestanden, dus de volgende keer dat ze ze bezoeken hoeven ze ze niet opnieuw te downloaden.

     # Schakelt browsercaching in  VerlooptActive On ExpiresByType image / jpg "toegang 1 jaar" ExpiresByType image / jpeg "toegang 1 jaar" ExpiresByType image / gif "toegang 1 jaar" ExpiresByType image / png "toegang 1 jaar" ExpiresByType text / css "toegang 1 maand" ExpiresByType application / pdf "toegang 1 maand" ExpiresByType text / x-javascript "toegang 1 maand" ExpiresByType application / x-shockwave-flash "toegang 1 maand" ExpiresByType image / x-icon "toegang 1 jaar" ExpiresDefault "toegang 2 dagen"  

    15. Stel aangepaste foutpagina's in

    U kunt .htaccess gebruiken om aangepaste foutpagina's in te stellen op uw WordPress-site. Om deze methode te laten werken, moet je ook maak de aangepaste foutpagina's (custom-403.html, custom-404.html in het voorbeeld) en upload ze naar je hoofdmap.

    U kunt een aangepaste foutpagina instellen voor elke HTTP-foutstatuscode (4XX en 5XX statuscodes) die u wenst.

     # Stelt aangepaste foutpagina's in ErrorDocument 403 /custom-403.html ErrorDocument 404 /custom-404.html