nginx try_files & drupal

Igor Sysoev is at rambler-co.ru
Fri Oct 9 16:25:11 MSD 2009


On Fri, Oct 09, 2009 at 03:45:45PM +0400, Vasiliy G Tolstov wrote:

> В Птн, 09/10/2009 в 13:36 +0400, Igor Sysoev пишет:
> 
> > Такой вариант лучше:
> > 
> > 1) идеологически,
> > 2) немного быстрее - нет нового поиска location'а после rewrite'а и нет
> >    двух regex'ов - "rewrite ^/(.*)$" и "location ~ \.php$".
> > 
> > В принципе, можно обойтись и без @drupal вообще:
> >      try_files      $uri  $uri/  /index.php?q=$uri&$args;
> > 
> > 
> 
> 
> Странно, но с таким вариантов не работает теперь image_cache модуль: 
> 
> первый атач - по конфигу вида:
> 1.conf (1.log)
> 
> второй по другому конфигу:
> 2.conf (2.log)
> 
> Есть ли какой-то вариант заставить try_files сработать и в этом случае?

Я не совсем понял, в чём заключается неработа, но возможно, нужно поставить
     open_file_cache_errors off;

Пара замечаний по конфигу:
   if ($http_host ~ "^blog.(.*)") {
и прочая нужно заменить на

   server {
      server_name  ~^blog.(.+)$;
      set      $name    $1;
      rewrite  ^   http://$name/blog$request_ur?;
   }

и прочая.

Вместо

 location ~ "^/(CHANGELOG|COPYRIGHT|INSTALL\.mysql|INSTALL\.pgsql|INSTALL|LICENSE|MAINTAINERS|UPGRADE)\.txt" {
   deny all;
 }

лучше сделать
   location = /CHANGELOG { deny all; }
   location = /INSTALL.mysql { deny all; }
   location = /INSTALL.pgsql { deny all; }
   location = /INSTALL { deny all; }
   и т.д.


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





More information about the nginx-ru mailing list