Re: Сжимать gzip контент отданный модулем

Maxim Dounin mdounin на mdounin.ru
Ср Мар 16 21:35:40 MSK 2011


Hello!

On Wed, Mar 16, 2011 at 12:30:27PM -0400, Fly3110 wrote:

[...]

> > > Вот начало сессии
> > собраной wireshark:
> > >
> > > GET /ng/test.exe HTTP/1.1
> > 
> > -location = /ng {
> > +location /ng {
> 
> Там все хитрее в конфиге.
> Я упростил и видимо зря. Общая картина такая:
> 
> location ~ ^\/ng\/size([0-9]*)\/.*(?:\.exe|).*$ { rewrite \/size([0-9]*)\/.*(?:\.exe|).*$ /ng.exe?size=$1 last;}
> location = /ng.exe {
> и те директивы, что в сообщении выше (my_flv; gzip и.т.д.)
> }
> 
> То есть идет запрос на 
> http://domain.com/ng/size1234567/test.exe, он рерайтится на 
> /ng.exe?size=1234567, где отрабатывает свой модуль. И хочется 
> результат выдавать в gzip

Привёденный вами тестовый запрос - к "/ng/test.exe".  Ни под один 
из приведённых вами location'ов он не попадает.

Совет: если хочется что-то упрощать, то делать это надо не в уме, 
а писать реальный упрощённый конфиг и воспроизводить проблему на 
нём.

> локейшен отрабатывает, так как при удалении ng.exe идет 404

То, что при удалении файла получается 404 - говорит о том, что 
используется данный файл.  Но ни как ни о том, что используется 
какой-либо конкретный location.

> P.S. Сейчас подумал, а может gzip надо в первый локейшн, где регулярка вставлять?

Точно нет, в нём вообще запросы не обрабатываются, там один 
сплошной rewrite.

Maxim Dounin



Подробная информация о списке рассылки nginx-ru