Вернуть 404 для директории

12
iamsens
На сайте с 26.08.2009
Offline
115
#11
iamsens, а что нельзя просто в главный nginx.conf прописать ? Чтобы проинклудить, мне придется это сделать в более чем 100 файлах.

думаю что нет, поправить 100 файлов можно с помощью find|sed, но это уже уход в сторону от изначально поставленой задачи

добавить пару строк в httpd.conf будет более изящно, и в даном случае, наверно более уместно

---------- Добавлено 29.09.2013 в 18:32 ----------

и если на сервере стоит апач 2.2, то выгоднее использовать

http://httpd.apache.org/docs/2.2/mod/core.html#locationmatch

<LocationMatch "/wp-admin/*">

RewriteCond %{REMOTE_ADDR} !^77\.110\.1\.33$
RewriteRule . google.com/404.php [R=404,L]
</Location>
Goldsnich
На сайте с 17.07.2011
Offline
52
#12

Большое спасибо, работает и LocationMatch, только вы директиву не верно закрыли, вот что у меня получилось:

<LocationMatch "(wp-admin|administrator|admin)">

RewriteCond %{REMOTE_ADDR} !^77\.110\.1\.33$
RewriteCond %{REMOTE_ADDR} !^77\.110\.1\.36$
RewriteRule . google.com/404.php [R=404,L]
</LocationMatch>

Отсекаются все, кто пытается запросить url, в адресe которого присутсвует wp-admin, administrator, admin, но разрешено 2-ум IP.

Еще вопрос по nginx, как сюда логичиское "И" правильно вставить ?

location ~ ^/(wp-admin|wp-login\.php$) { 

if ( $remote_addr != "77.110.1.33" ) { return 404;}
}

т.е. чтобы 2, 3, 4... IP адреса можно было использовать

Покупаю сайты с доходом sape и др. (http://goldsnich.com/sell/)
iamsens
На сайте с 26.08.2009
Offline
115
#13

локешейн в апаче, да, криво закрыл

для нгинкса правило с несколько IP, кажется, можно сделать так

if ( $remote_addr !~ "(77.110.1.33|77.110.1.36)" ) { return 404;}
Goldsnich
На сайте с 17.07.2011
Offline
52
#14

Сегодня для интереса просматривала админки вордпресса сайтов в GGL, на одном, при запросе wp-admin увидела такое сообщение:

Здравствуйте!

Доступ в административную панель Wordpress заблокирован из-за масштабной атаки, целью которой является подбор пароля администратора. Атакам подверглись сайты, размещенные у большинства хостинг-компаний.

Наша компания использует специальную защиту для блокировки доступа по стандартным адресам входа: http://ваш-сайт/wp-login.php и http://ваш-сайт/wp-admin/

Альтернативный адрес для доступа: http://ваш-сайт/wpadmin.html

Мы настоятельно рекомендуем изменить стандартный адрес входа для защиты от подобных атак с помощью специального скрипта.

С уважением, ********

Мне пришлось убрать admin отсюда <LocationMatch "(wp-admin|administrator|admin)"> (админка DLE стандартно по адресу http://domain.com/admin.php)

потому что так режет всех, если к примеру нажать на сайте на автора admin и пытаться просмотреть его записи, в url попадает "admin". URL выглядит так: http://domain.com/author/admin

Все верно, так по идеи должно быть, поэтому вариант с <Directory /usr/local/www/apache22/data/*/wp-admin> иногда более уместен я считаю. Либо как-то в LocationMatch прописать чтобы сначала было имя домена, а потом стринг "admin".

iamsens
На сайте с 26.08.2009
Offline
115
#15

тогда нужно так, попробовать

<LocationMatch "^/(wp-admin|administrator|admin)">

суть надеюсь понятна

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий