Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Rewrite "на" GZIP content-encoding.
- To: nginx-ru@xxxxxxxxx
- Subject: Rewrite "на" GZIP content-encoding.
- From: Aliaksey Kandratsenka <alk@xxxxxx>
- Date: Wed, 24 Oct 2007 16:30:30 +0300
Добрый день, all.
У меня в определенном каталоге есть файлы all.js (хорошо пакуемый
javascript) и all.js.gz (он же, только пожатый gzip'ом). Я хочу чтобы
вместо all.js можно было отдавать all.js.gz (с правильным
content-encoding, разумеется). Мне удалось это сконфигурировать так:
# переписывать только если клиент готов принимать gzip
if ($http_accept_encoding ~* gzip) {
rewrite "/javascripts/all.js" "/javascripts/all.js.gz";
}
# если спакованой версии нету переписать назад
if (!-f "/opt/phase1/public/javascripts/all.js.gz") {
rewrite "/javascripts/all.js.gz" "/javascripts/all.js";
}
location = /javascripts/all.js.gz {
# поставить правильные content-{type, encoding}
add_header Content-Type text/javascript;
add_header Content-Encoding gzip;
}
В данном случае очень просится поддержка либо вложенных IF'ов или
поддержка коньюнкции в IF'ах. Без этого приходится прибегать к
переписыванию "назад". В связи с этим у меня вопрос. Может ALL знает
способ сделать это лучше?
|