Начална » WordPress » 15 Полезни .htaccess фрагменти за вашия WordPress сайт

    15 Полезни .htaccess фрагменти за вашия WordPress сайт

    Да имаш a добре конфигуриран .htaccess файл е от решаващо значение, ако искате повишаване на сигурността и намаляване на уязвимостите на вашия WordPress сайт. Обикновено основната цел на създаването на персонализиран .htaccess файл е да предотвратите хакерирането на сайта ви, но също така е и отличен начин да се справите с пренасочването и управлението на свързаните с кеш задачи.

    .htaccess е a конфигурационен файл използва се на уеб сървърите на Apache. Повечето сайтове на WordPress да се изпълняват на Apache сървър, макар и малка част задвижван от Nginx. В тази статия можете да намерите a колекция от кодови фрагменти .htaccess, повечето от които можете да използвате, за да защитите уебсайта си, а останалите изпълняват други полезни функции.

    Не забравяйте архивирайте .htaccess файла преди да я редактирате, така че винаги можете връщане към предишната версия ако нещо се обърка.

    И ако сте човек, който по-скоро не докосва конфигурационни файлове, препоръчвам ви BulletProof Security плъгин, който е най-надежден (и вероятно най-старият) безплатен .htaccess плъгин за сигурност на пазара.

    Създайте по подразбиране WP .htaccess

    .htaccess работи на на базата на директория което означава, че всяка директория може да има свой собствен .htaccess файл. Лесно може да се случи, че вашият WordPress сайт все още няма .htaccess файл. Ако не намерите файл .htaccess в главната директория създайте празен текстов файл и го наречете .Htaccess.

    По-долу можете да намерите по подразбиране .htaccess WordPress използва. Когато имате нужда от този код, можете бързо да го потърсите в WordPress Codex. Имайте предвид, че има различен .htaccess за WP Multisite.

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

    Редовете, започващи с # са коментари. Не редактирайте нищо между редовете # BEGIN WordPress и # END WordPress. Добавете персонализираните си правила .htaccess под тези правила по подразбиране.

    Всички кодови фрагменти можете да намерите в тази статия отидете в основния файл .htaccess в главната директория.

    1. Откажете достъп до всички .htaccess файлове

    Кодът по-долу отказва достъп към всички .htaccess файлове, които сте инсталирали във вашия WordPress. По този начин можете да попречите на хората да виждат вашите конфигурации на уеб сървър.

     # Отрича достъп до всички .htaccess файлове  Поръчайте Позволете, отречете отказа от всички Задоволи всички  

    2. Защитете вашата WP конфигурация

    Най- WP-config.php файлът съдържа всичките ви WP конфигурации, включително базата данни за вход и парола. Можете да го отхвърлите от всеки или давате разрешение на администраторите да имат достъп до него.

    Ако изберете последното коментар на # Разрешаване от xx.xx.xx.xxx линия (премахване # от началото на линията) и въведете IP адреса на администратора на мястото на xx.xx.xx.xxx.

     # Защитава wp-конфиг  Поръчка Допускане, Отказ # Разрешаване от xx.xx.xx.xxx # Разрешаване от yy.yy.yy.yyy Отказ от всички  

    3. Предотвратете атаката на XML-RPC DDoS

    WordPress поддържа XML-RPC по подразбиране, което е интерфейс, който прави отдалечено публикуване възможен. Въпреки това, макар и да е страхотна функция, това е и една от най-големите уязвимости на WP, тъй като хакерите могат използвайте я за DDoS атаки.

    Ако не искате да използвате тази функция, по-добре е просто я изключете. Както и преди, можете добавете изключения, като коментирате на # Разрешаване от xx.xx.xx.xxx ред и добавяне на IP адресите на вашите администратори.

     # Защитава XML-RPC, предотвратява DDoS атака  Отказ от поръчка, Разрешаване на # Разрешаване от xx.xx.xx.xxx # Разрешаване от yy.yy.yy.yyy Отказ от всички  

    4. Защитете вашата администраторска област

    Също така е добра идея защита на административната област чрез предоставяне на достъп само до администраторите. Ето, не забравяйте добавете поне един “Позволява” изключение в противен случай изобщо няма да имате достъп до администратора си.

     # Защитава администраторската област от IP AuthUserFile / dev / null AuthGroupFile / dev / null AuthName "WordPress Администраторски контрол на достъп" AuthType Basic  Отказ от поръчка, Разрешаване на отказ от всички Разрешаване от xx.xx.xx.xxx Разрешаване от yy.yy.yy.yyy  

    5. Предотвратете списъка с директории

    Повечето сайтове на WordPress не изключват списъка с директории, което означава, че всеки може преглеждате техните папки и файлове, включително медийни качвания и файлове с приставки. Излишно е да казвам, че това е огромна уязвимост в сигурността.

    По-долу можете да видите как a изглежда типичният списък с указатели на WordPress.

    За щастие, просто трябва един ред код , за да блокирате тази функция. Този кодов фрагмент ще бъде връщане на съобщение за грешка 403 за всеки, който иска достъп до вашите директории.

     # Предотвратява опциите -Индекси на списъка с директории 

    6. Предотвратете изброяването на потребителски имена

    Ако WP permalinks са активирани, това е доста лесно изброява потребителски имена използвайки архивите на автора. Разкритите потребителски имена (включително потребителското име на администратора) могат да се използват в атаки с груба сила.

    Поставете долния код в .htaccess файла предотвратяване на изброяване на потребителски имена.

     # Предотвратява преброяването на потребителското име RewriteCond% QUERY_STRING author = d RewriteRule ^ /? [L, R = 301] 

    7. Блокирайте спамерите и ботовете

    Понякога може да искате ограничаване на достъпа от определени IP адреси. Този кодов фрагмент осигурява лесен начин да блокирате вече познатите ни спамъри и ботове.

     # Блокира спамерите и ботовете  Поръчайте Разрешаване, Отказ от Deny от xx.xx.xx.xxx Отказ от yy.yy.yy.yyy  Позволете от всички 

    8. Предотвратете връзката с изображенията

    Въпреки че не е заплаха за сигурността, снимка е все още досадно нещо. Хората не само използвайте изображенията си без ваше разрешение но те дори го правят на ваша цена. С тези няколко реда код можете да защитите сайта си от горещо свързване.

     # Предотвратява връзката между изображенията RewriteEngine на 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. Ограничаване на директен достъп до плъгин & тема PHP файлове

    Може да бъде опасно, ако някой директно извиква плъгина и файловете на темата, дали се случва случайно или от злонамерен нападател. Този кодов фрагмент идва от компанията за сигурност на уебсайта на Acunetix; можете да прочетете повече за тази уязвимост в публикацията им в блога.

     # Ограничава достъпа до файлове от PHP от директории за приставки и теми RewriteCond% REQUEST_URI! ^ / Wp-content / plugins / file / to / exclude \ _ php RewriteCond% REQUEST_URI! ^ / Wp-content / plugins / directory / to / изключване / RewriteRule wp-content / plugins / (. * php) $ - [R = 404, L] Презаписване на% REQUEST_URI! ^ / wp-content / themes / файл / към / изключване REQUEST_URI! ^ / Wp-content / themes / директория / към / изключване / RewriteRule wp-content / themes / (. * Php) $ - [R = 404, L] 

    10. Настройте постоянни пренасочвания

    Можете лесно се справят с постоянни пренасочвания с .htaccess. Първо трябва да добавите стар URL, след това следвайте нов URL адрес която сочи към страницата, към която искате да пренасочите потребителя.

     # Постоянни пренасочвания Пренасочване 301 / oldurl1 / http://yoursite.com/newurl1 Пренасочване 301 / oldurl2 / http://yoursite.com/newurl2 

    11. Изпратете посетителите на страница за поддръжка

    Тук подробно сме писали за тази техника. Трябва ти отделна страница за поддръжка (maintenance.html в примера) за това .htaccess правило да работи. Този код поставя вашия WordPress сайт в режим на поддръжка.

     # Пренасочва към страницата за поддръжка  RewriteEngine в 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. Ограничаване на достъпа до WP

    Най- / WP-включва / папка съдържа основните WordPress файлове които са необходими за работата на ССФ. Няма съдържание, плъгини, теми или нещо друго, на което потребителят може да иска да има достъп тук. Така че да се втвърди сигурността е най-добре ограничи достъпа до него.

     # Блокира всички wp-папки и файлове  RewriteEngine На RewriteBase / RewriteRule ^ wp-admin / включва / - [F, L] RewriteRule! ^ Wp-включва / - [S = 3] RewriteRule ^ wp-включва / [^ /] + php $ - [F, L] RewriteRule ^ wp-включва / js / tinymce / langs /.+ php - [F, L] RewriteRule ^ wp-включва / theme-compat / - [F, L]  

    13. Блокиране на скриптове между сайтове (XSS)

    Следният кодов фрагмент е от WP Mix и защитава вашия сайт някои често срещани XSS атаки, а именно инжектиране на скриптове и опити за модифициране на глобални променливи и променливи за заявка.

     # Блокира някои XSS атаки  RewriteCond% QUERY_STRING (\ _% 3E) [NC, OR] RewriteCond% QUERY_STRING GLOBALS (= | \ _ [0-9A-Z] 0,2) [ИЛИ] RewriteCond% QUERY_STRING  _REQUEST (= | | [| [0-9A-Z] 0,2) RewriteRule. * Index.php [F, L]  

    14. Активирайте кеширането на браузъра

    Както споменах преди, .htaccess е не само добър от съображения за сигурност и пренасочване, но може да ви помогне управление на кеша. Фрагментът по-долу е от елегантни теми и то прави възможно кеширането на браузъра като позволи на посетителите да запазване на определени видове файлове, така че следващия път, когато посетят те не трябва да ги изтеглят отново.

     # Позволява кеширане на браузъра  ExpiresByType image / jpeg "достъп 1 година" ExpiresByType изображение / gif "достъп 1 година" ExpiresByType image / png "достъп 1 година" ExpiresByType текст / css "достъп 1 месец" ExpiresByType application / pdf "достъп 1 месец" ExpiresByType текст / x-javascript "достъп 1 месец" ExpiresByType application / x-shockwave-flash "достъп 1 месец" ExpiresByType image / x-icon "достъп 1 година" Изтичане по подразбиране "достъп до 2 дни"  

    15. Настройте персонализирани страници за грешки

    Можете да използвате .htaccess, за да настроите персонализирани страници за грешки на вашия WordPress сайт. За да работи този метод, трябва да го направите създайте персонализирани страници за грешки (обичай-403.html, обичай-404.html в примера) и качвайте ги в главната папка.

    Можете да настроите персонализирана страница за грешка за всеки код за състояние на HTTP грешка (Кодове за състояние 4XX и 5XX), които искате.

     # Настройва персонализирани страници за грешки ErrorDocument 403 /custom-403.html ErrorDocument 404 /custom-404.html