Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: Нужен совет по редиректу POST-в
Добрый день, Игорь
> > Отрабатывает эти запросы хэндлер 404 ошибки, тратя попусту
> кучу процессорного времени на прием данных поста и отработку 404.пхп.
> > Фронтендом для этого сайта работает nginx. Возможно ли мне
> задать какое-то правило для location /blog/trackback\.php/
> {}, которое будет отдавать клиенту статическую хтмл страницу
> через nginx?
>
> location /blog/trackback\.php/ {
> return 404;
>
> error_page 403 @dummy;
> }
>
Нет, не получается :( Что должен делать nginx, получая директиву return 404 ?
Такое ощущение, что он не отдает страницу, определенную в error_page 404
/404.html... Возможно, из-за использования метода POST?
Nginx всё же пробрасывает этот запрос на бэкенд:
Вот лог nginx
[04/Dec/2007:10:13:17 +0300] pc-gamer.ru 62.213.113.158 - "POST
/blog/trackback.php/dspair/56 HTTP/1.1" 404 484 "-" "WordPress/2.0"
[04/Dec/2007:10:13:17 +0300] pc-gamer.ru 212.158.169.79 - "POST
/blog/trackback.php/frag/24 HTTP/1.1" 404 482 "-" "WordPress/1.9"
[04/Dec/2007:10:13:17 +0300] pc-gamer.ru 212.24.32.235 - "POST
/blog/trackback.php/tretyakov/50 HTTP/1.1" 404 487 "-" "WordPress/2.0"
[04/Dec/2007:10:13:18 +0300] pc-gamer.ru 62.213.114.196 - "POST
/blog/trackback.php/hornet/66 HTTP/1.1" 404 484 "-" "WordPress/2.1.2"
[04/Dec/2007:10:13:18 +0300] pc-gamer.ru 62.213.114.196 - "POST
/blog/trackback.php/hornet/66 HTTP/1.1" 404 484 "-" "WordPress/2.1.2"
[04/Dec/2007:10:13:18 +0300] pc-gamer.ru 62.213.113.157 - "POST
/blog/trackback.php/frag/10 HTTP/1.1" 404 482 "-" "WordPress/2.0"
[04/Dec/2007:10:13:18 +0300] pc-gamer.ru 62.213.68.100 - "POST
/blog/trackback.php/tretyakov/57 HTTP/1.1" 404 487 "-" "WordPress 1.9"
[04/Dec/2007:10:13:18 +0300] pc-gamer.ru 62.213.68.100 - "POST
/blog/trackback.php/tretyakov/57 HTTP/1.1" 404 487 "-" "WordPress 1.9"
[04/Dec/2007:10:13:18 +0300] pc-gamer.ru 62.213.113.158 - "POST
/blog/trackback.php/dspair/56 HTTP/1.1" 404 484 "-" "WordPress/2.0"
[04/Dec/2007:10:13:18 +0300] pc-gamer.ru 212.24.61.114 - "POST
/blog/trackback.php/frag/36 HTTP/1.1" 404 482 "-" "WordPress/2.1.2"
А вот лог апача(не одновременный, но это неважно), мы отдаем сейчас статическую
404.хтмл, но это не полностью спасает от атаки - запросы идут с ~2500 хостов,
все из IP диапазонов caravan.ru, 10 подсеток класса С, похоже, затроянили
несколько интернет кафе или еще чего-то.
127.0.0.2 - - [04/Dec/2007:10:16:42 +0300] "POST /blog/trackback.php/hornet/27
HTTP/1.0" 404 290 "-" "WordPress/2.0"
127.0.0.2 - - [04/Dec/2007:10:16:42 +0300] "POST /blog/trackback.php/frag/24
HTTP/1.0" 404 288 "-" "WordPress/1.9"
127.0.0.2 - - [04/Dec/2007:10:16:43 +0300] "POST /blog/trackback.php/hornet/27
HTTP/1.0" 404 290 "-" "WordPress/2.0"
127.0.0.2 - - [04/Dec/2007:10:16:44 +0300] "POST /blog/trackback.php/frag/10
HTTP/1.0" 404 288 "-" "WordPress 1.9"
127.0.0.2 - - [04/Dec/2007:10:16:44 +0300] "POST
/blog/trackback.php/tretyakov/57 HTTP/1.0" 404 293 "-" "WordPress/2.1.2"
127.0.0.2 - - [04/Dec/2007:10:16:44 +0300] "POST /blog/trackback.php/dspair/56
HTTP/1.0" 404 290 "-" "WordPress 1.9"
> error_page в данному случае нужна, чтобы убрать возможное наследование
> с уровня http или сервера
>
> error_page 404 ...
>
Сейчас у нас определена страничка на уровне контейнера server {}
error_page 404 /404.html;
location /404.html { root /home/goldmaker/www/bitrix/; }
Наверное, переопределять ее не стОит?
С уважением,
Дмитрий
|