два правила работают по отделности но не вместе

shambler81 nginx-forum at nginx.us
Fri Jan 11 07:44:26 UTC 2013


Здравствуйте коллеги,  в кратце. nginx + apache 
1. правило отрезает www  из $host поскольау /var/www/www.site.ru естественно
нет, а делать дополнительный линк глупо
2. при отсутствие /lalala.html  фактичеки в папке перенаправляется на движок
index.php 
все правила работают и стабильно
НО
Вместе
когда www.site.ru/lalala.html они уже не отрабатывают ;( nginx отдает 404
Проверив весь конфиг на это влияет толко две строчки  подскажите пожалуйста
чего я не учитывю
html|htm вынесены в отдельный локейшен посколкьу  многие сеошники в свое
время любили делать  сайты  на движках со статьями /lalala.html
и теперь приходится это расхлебывать.


location ~* ^.+\.(htm|html)$ {
# данная директива  при отсутствие файла
try_files $uri /index.php;


#   пусть до файлов по умолчанию
     root /var/www/$host/web;
#  если в $host содержится ввв то он его удаляет  в противном случае пусть
будет /var/www/www.site.ru
 if ($host ~* ^(www\.)(.+)) {
       set $HBW $2;
       root   /var/www/$HBW/web;
}
        access_log off;
        expires 30d;
    }

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,234927,234927#msg-234927



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