http_gunzip_module
Валентин Бартенев
vbart at nginx.com
Wed Dec 26 12:00:09 UTC 2012
On Wednesday 26 December 2012 15:39:12 dwow wrote:
> А что у вас покажут вот эти две команды при вашей конфигурации?
>
> curl -i localhost:8000/
> curl -i localhost:8000/ -H "Accept-Encoding: gzip"
>
Из-за лишнего слеша в try_files покажет 500-ую в обоих случаях,
но если слегка исправить:
events { }
http {
default_type text/html;
types {}
server {
listen 8000;
location / {
try_files $uri "${uri}test.html";
gunzip on;
gzip_vary on;
gzip_static always;
}
location = /test.html {
gunzip on;
gzip_vary on;
gzip_static always;
}
}
}
% curl -i localhost:8000/
HTTP/1.1 200 OK
Server: nginx/1.3.11
Date: Wed, 26 Dec 2012 11:51:36 GMT
Content-Type: text/html
Last-Modified: Wed, 26 Dec 2012 11:21:46 GMT
Transfer-Encoding: chunked
Connection: keep-alive
Vary: Accept-Encoding
GOOD
% curl -i localhost:8000/ -H "Accept-Encoding: gzip"
HTTP/1.1 200 OK
Server: nginx/1.3.11
Date: Wed, 26 Dec 2012 11:51:39 GMT
Content-Type: text/html
Content-Length: 35
Last-Modified: Wed, 26 Dec 2012 11:21:46 GMT
Connection: keep-alive
Vary: Accept-Encoding
ETag: "50daddca-23"
Content-Encoding: gzip
���Ptest.htmls��w�͒��%
Чтобы избежать появления 500-ой ошибки при других несуществующих запросах,
лучше переписать конфигурацию так:
location / {
try_files $uri /test.html;
gunzip on;
gzip_vary on;
gzip_static always;
}
location = /test.html {
gunzip on;
gzip_vary on;
gzip_static always;
}
если функциональность индекса нужна во множестве директорий, то так:
location / {
try_files $uri "${uri}test.html";
gunzip on;
gzip_vary on;
gzip_static always;
}
location ~ /test\.html$ {
gunzip on;
gzip_vary on;
gzip_static always;
}
--
Валентин Бартенев
http://nginx.com/support.html
http://nginx.org/en/donation.html
Подробная информация о списке рассылки nginx-ru