Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Проблемы переменных в п утях лог-файлов
On Mon, May 09, 2011 at 11:30:21AM -0400, skinc wrote:
> Доброго времени суток.
> Пытался в nginx/1.0.1 вынести Joomla-зависимый
> кусок конфига в отдельный файл, для
> облегчения добавления/изменения
> сайтов с данной CMS следующим образом:
>
> ----- Секция Server в nginx.conf -----
>
> server {
> listen 80;
> server_name example.com;
>
> set $home /home/www/example.com;
> root $home/www;
> include joomla_params;
>
> location / {
> try_files $uri $uri/ @joomla;
> }
> }
>
> ----- Файл joomla_params -----
>
> error_log $home/log/error.log;
> access_log $home/log/access.log main;
>
> index index.php;
>
> location ~ \.php$ {
> include fastcgi_params;
> fastcgi_pass unix:$home/php-fpm.sock;
> fastcgi_param SCRIPT_FILENAME /www$fastcgi_script_name;
> fastcgi_param DOCUMENT_ROOT /www;
> }
>
> location @joomla {
> include fastcgi_params;
> fastcgi_pass unix:$home/php-fpm.sock;
> fastcgi_param SCRIPT_FILENAME /www/index.php;
> fastcgi_param SCRIPT_NAME /index.php;
> fastcgi_param DOCUMENT_ROOT /www;
> }
>
> ----- Конец конфига -----
>
> Как выяснилось не работает по
> следующим причинам:
> 1. error_log вообще не поддерживает
> переменных - ошибка "nginx: [emerg] open()
> "/$home/log/error.log" failed (2: No such file or directory)"
Да.
> 2. access_log добавляет префикс (${prefix}), если
> путь не начинается с символа "/" ("/$home"),
> несмотря на то, что в значении
> переменной он присутствует ("set $home
> /home/www/example.com;").
У access_log с переменными в имени куча ограничений:
http://sysoev.ru/nginx/docs/http/ngx_http_log_module.html#access_log
error_log и access_log можно определять на уровне сервера и они
унаследуются во все location'ы. С fastcgi_pass так не получится.
--
Igor Sysoev
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|