Re: Настройка nginx под image hosting

Oleksandr V. Typlyns'kyi wangsamp на gmail.com
Пн Апр 12 19:50:34 MSD 2010


Today Apr 12, 2010 at 11:05 grigory wrote:

> Может, кто подскажет, как корректно заменить эту конструкцию на try_files при условии, что нет fastcgi:

> location ~* ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|wav|bmp|rtf|js)$ {
>    access_log  off;
>    expires  365d;
>    root   /var/www/virtual/domain.com;
> 
>    if (!-e $request_filename) {
>       rewrite ^\/folder([0-9]+)\/(+)\.gif$        http://sub.domain.com/folder$1/$2.gif;
>       break;
>    }
> }

  Если конфиг именно такой, то он предусматривает внешний редирект на такой же URI, но на другом домене.
  try_files же работает в контексте одного location с fallback на внутренний редирект.
  Ваша цель избежать конструкции "if (!-e $request_filename)" и редирект нужно отдавать только для некоторых gif-ов?
  Если да, то можно попробовать так:
  location ~* \.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|wav|bmp|rtf|js)$ {
	access_log off;
	expires 365d;
	root /var/www/virtual/domain.com;
	error_page 404 = @gifredir;
  }
  location @gifredir {
	rewrite ^\/folder([0-9]+)\/(.+)\.gif$ http://sub.domain.com/folder$1/$2.gif;
	return 404;
  }

-- 
WNGS-RIPE



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