Welcome! Log In Create A New Profile

Advanced

Re: Как правильно задать локейшн

Igor Sysoev
December 17, 2009 09:26AM
On Thu, Dec 17, 2009 at 05:16:38PM +0300, Maxim Dounin wrote:

> Hello!
>
> On Thu, Dec 17, 2009 at 04:30:58PM +0300, Андрей Бойко wrote:
>
> > Добрый день.
> >
> > Есть локейшн
> > location ~* ^.+\.(swf|jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|wmv|avi|asp)$ {
> > ssi on;
> > root /usr/local/www/htdocs;
> > expires 24h;
> > }
> > Он призван отдавать статику напрямую
> > Кто-то умный загрузил кучу файлов вида xxx.GIF, и для этих файлов локейшн не срабатывает. Как ему правильно дать понять, что регистр может быть любой?
>
> http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#location
>
> Там достаточно однозначно написано, что "~*" - это caseless match,
> указанный location должен срабатывать.
>
> То, что он не срабатывает - это бага, появилось где-то в 0.8.*,
> сейчас буду смотреть подробнее.
>
> Quick workaround - поставить caseless явно в регулярное выражение:
>
> location ~ (?i)\.(swf|gif|...)$ {
> ...
> }

Патч. Появилось в 0.8.25.


--
Игорь Сысоев
http://sysoev.ru
Index: src/http/ngx_http_core_module.c
===================================================================
--- src/http/ngx_http_core_module.c (revision 2709)
+++ src/http/ngx_http_core_module.c (working copy)
@@ -2588,6 +2588,8 @@

#if (NGX_HAVE_CASELESS_FILESYSTEM)
rc.options = NGX_REGEX_CASELESS;
+#else
+ rc.options = caseless;
#endif

clcf->regex = ngx_http_regex_compile(cf, &rc);
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Как правильно задать локейшн

Андрей Бойко December 17, 2009 08:32AM

Re: Как правильно задать локейшн

akalend December 17, 2009 08:36AM

Re: Как правильно задать локейшн

Андрей Бойко December 17, 2009 08:56AM

Re: Как правильно задать локейшн

Alex Vorona December 17, 2009 09:00AM

Re: Как правильно задать локейшн

Андрей Бойко December 17, 2009 03:00PM

Re: Как правильно задать локейшн

Maxim Dounin December 17, 2009 09:18AM

Re: Как правильно задать локейшн

Igor Sysoev December 17, 2009 09:26AM

Re: Как правильно задать локейшн

Andrey N. Oktyabrski December 17, 2009 09:30AM

Re: Как правильно задать локейшн

Andrew Kopeyko December 17, 2009 10:12AM

Re: Как правильно задать локейшн

Maxim Dounin December 17, 2009 11:00AM

Re: Как правильно задать локейшн

Андрей Бойко December 17, 2009 02:58PM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 258
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready