ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Re[2]: проблема с error_page


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: Re[2]: проблема с error_page
  • From: Sergey Shepelev <temotor@xxxxxxxxx>
  • Date: Sun, 8 Nov 2009 16:21:53 +0300
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=yKVd89JWVCrA9trbWdl4yx5RE+ta8aIAyxqJJrQZyjQ=; b=JKVUTEDunHZ+0HdmKEI0oqJGNQJpVeLH/RwMRgQAiX34vqmTPrao3ex1mlYZvDFQCX Y55gH6xcLnumfqLqNpPIOP8RrW0b56lPW7g3HwxRkuYwIB3QA867LPsYcB6Wacrh5cZq Rp0vCyhtLBcAnhgya7gO2Fu5uYAzdfDCKNiT4=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=AxDLCptnNTkPnLyUw90IptFligcZTEbisoEooFneLBTEnM48icwyZ/5/P8jMnEgOCb j5LGYhmWpxCu+2R+2IBsLOwVlHyQuxmNY90KN9dJK2hH3/AfwCXqCeWkWd4xuKpeKEKW kyLR371I5UiGFu9n00g7uuKqI3Dy8gvcp+hKM=
  • In-reply-to: <1983060531.20091108120738@xxxxxxxxxxxxx>
  • References: <18210602967.20091107213719@xxxxxxxxxxxxx> <933218122.20091108001039@xxxxxxxxxxxxx> <20091108011031.GI1144@xxxxxxxxxx> <1983060531.20091108120738@xxxxxxxxxxxxx>

2009/11/8 Михаил Монашёв <postmaster@xxxxxxxxxxxxx>:
> Здравствуйте, Максим.
>
>>> Проблема с error_page осталась, но другая.
>>>
>>> Сейчас конфиг для раздачи фавиконов сайтов вот такой:
>>>
>>>         proxy_intercept_errors  on;
>>>         error_page      400 401 402 403 404 405 406 407 408 409
>>> 410 411 412 413 414 415 416 417 422 423 424 425 426 449 500 501 502
>>> 503 504 505 506 507 509 510 = /zero;
>>>
>>>         location / {
>>>                 return 204;
>>>         }
>>>
>>>         location = /zero {
>>>                 return 204;
>>>         }
>>>
>>>         # aa.ru
>>>         location ~ "^/([a-z0-9-]{1,50}\.[a-z]{2,4})$" {
>>>                 proxy_set_header        Host    $1;
>>>                 proxy_pass              http://$1/favicon.ico;
>>>         }
>>>
>>>         # bb.aa.ru
>>>         location ~
>>> "^/([a-z0-9-]{1,50\}.[a-z0-9-]{1,50}\.[a-z]{2,4})$" {
>>>                 proxy_set_header        Host    $1;
>>>                 proxy_pass              http://$1/favicon.ico;
>>>         }
>>>
>>>         # cc.bb.aa.ru или 111.222.33.44
>>>         location ~
>>> "^/([a-z0-9-]{1,50}\.[a-z0-9-]{1,50}\.[a-z0-9-]{1,50}\.[a-z0-9]{1,4})$"
>>>                 proxy_set_header        Host    $1;
>>>                 proxy_pass              http://$1/favicon.ico;
>>>         }
>>>
>>>
>>> Но не знаю как решить проблему с отключением проксирования редиректов.
>>> error_page на 300-ые статусы ругается. И редиректы проксируются юзеру.
>>> Что  не мешает хакеру средиректить на страничку, где выдадут 401 код и
>>> юзер  вместо  фавиконки  увидит  окно  http-авторизации.  Ну  а дальше
>>> доверчивые юзеры вводят свои пароли...
>
> MD> У меня есть два замечания:
>
> MD> 1. Задачу замены 3xx через error_page я в свое время решал для
> MD> wap-сайтов (wml, ага, чтобы бекенды не конфигурировать лишнего).
> MD> Где-то у меня на сайте валяется патч, но он для 0.5.*.  На текущие
> MD> версии скорее всего не ляжет.
>
> Пока решил проблему через
> proxy_hide_header       Location;
>
> Но это криво: неверный статус и ненужное html-тело.
>
> MD> 2. Если я правильно понимаю что ты хочешь сделать - тебе нужно не
> MD> это, а image_filter.  Потому как вместо картинки отдать exploit -
> MD> точно так же никто не мешает, надо содержимое хотя бы минимально
> MD> проверять.
>
> Да,  он  для  этой  задачи  как раз идеален. Но favicon.ico имеют свой
> формат  и  я  всегда  буду  получать  415 код. Было б здорово добавить
> поддержку ICO в модуль, ибо этот формат в вебе тоже используется.
>

Нет, /favicon.ico это просто имя ресурса. Формат определяется
исключительно content-type.

Можно раздавать гифы, жпеги, всё что угодно. И оно будет работать. Ну,
конечно, кроме старых браузеров.
http://www.spamobzor.ru/ здесь, например, PNG выступает в роли favicon.

> --
>
> С уважением,
> Михаил Монашёв, SoftSearch.ru
> mailto:postmaster@xxxxxxxxxxxxx
> ICQ# 166233339
> http://michael.mindmix.ru/
> Без бэкапа по жизни.
>
>
>


 




Copyright © Lexa Software, 1996-2009.