2016-06-07 3 views
0

Я хотел бы ограничить доступ ко всем файлам в каталоге на моем сервере через .htaccess на основе HTTP_REFERER для всех источников, кроме тех, которые содержат строку wp-admin.Ограничить доступ на основе HTTP_REFERER, содержащего строку

Не могли бы вы предоставить правильный код с регулярным выражением для вставки в .htaccess?

Большое спасибо.

+0

Не очень хороший вопрос для здесь, а также вы все равно не хотите этого делать. – pvg

+0

@pvg, почему я этого не хочу? – Sergey

+0

, потому что это тривиально подделано. – pvg

ответ

0

Вы можете сделать это с помощью mod_rewrite и опции [F], чтобы отметить трафик, который не соответствует условию как запрещенному. Вы можете сделать утверждение Regex немного более интересным, добавив^https?: // и т. Д., Но поскольку у меня есть это, только тестовый трафик должен пройти тест. В основном, он проверяет, содержит ли HTTP_REFERER ваш domain.com/wp-admin, и если да, то позволяет трафик как ожидалось; в противном случае его удаляют по тротуару.

RewriteEngine On 
RewriteBase/

# allow these referers to passthrough 
RewriteCond %{HTTP_REFERER} yourdomain.com/wp-admin 
RewriteRule^- [L] 

# deny everything else 
RewriteRule^- [F] 
+0

Как я могу исключить домен? Мне нужно принимать любые домены, а не единственные. – Sergey

+0

Если это какой-либо домен, который вы хотите, что позволяет для WordPress установки из любого подкаталога, он бы заменить строку RewriteCond% {HTTP_REFERER} yourdomain.com/wp-admin с RewriteCond% {HTTP_REFERER}/WP-администратором Способ, которым работает условие RewriteCond, заключается в том, что вся строка, которую сервер говорит, соответствует HTTP_REFERER для строки, которая следует за ней, поэтому, если это просто/wp-admin, это соответствует любому URL-адресу ссылки, содержащему эту строку. Конечно, это не означает, в принципе, что-то вроде безопасности, независимо от того, контролируете ли вы эти домены. –

+0

Извините, но похоже, что это не сработает. Когда я пытаюсь получить доступ к файлу из wp-admin, это дает мне запретную ошибку. – Sergey

Смежные вопросы