rewrite

Igor Sysoev is at rambler-co.ru
Sat Sep 19 15:34:52 MSD 2009


On Sat, Sep 19, 2009 at 06:32:35PM +0700, Denis F. Latypoff wrote:

> Hello Антон,
> 
> Saturday, September 19, 2009, 5:53:19 PM, you wrote:
> 
> > Помню что все любят тут спрашивать, как переписать тот или иной реврайт из
> > формата апача под nginx. Вот и у меня встал такой вопрос, как правильнее
> > переписать такой:
> > RewriteEngine On
> > RewriteBase /metric/
> > RewriteCond %{REQUEST_URI} [^/]+\.gif$
> > RewriteCond %{DOCUMENT_ROOT}/metric/cache%{REQUEST_URI} -f
> > RewriteRule ^(.+)$ cache/$1 [L]
> > RewriteRule ^([^/]+)\.gif$ out_metric.php?mi=$1 [L]
> 
> > Понимаю, что должно быть что-то вроде :
> 
> > location ~ ^/metric/\.(gif|)$ {
> 
> > root /path/to/metric
> > }
> 
> > А как написать условия RewriteCond и RewriteRule не догоняю.
> > Сможет кто-нибудь помочь?
> 
> 
> fastcgi_cache_path  /tmp/nginx_cache levels=1:2   keys_zone=metric:10m;
> 
> location ~ ^/metric/([^/]+)\.gif$ {
> 
>     alias                   /path/to/metric/cache;
> 
>     fastcgi_cache_key       $1;
>     fastcgi_cache_min_uses  1;
>     fastcgi_cache_valid     1y;
>     fastcgi_cache           metric;
> 
>     include                 fastcgi_params;
> 
>     fastcgi_pass            ...;
>     fastcgi_param           SCRIPT_FILENAME /path/to/out_metric.php;
>     fastcgi_param           QUERY_STRING    mi=$1;
> }

"alias  /path/to/metric/cache" тут не нужен, да и вообще, работать не
будет - нужно добавить capture, но вообще, fastcgi_cache - мысль здравая.


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list