Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Администрирование Web серверов и Web служб > Переменные в конфигах Nginx


Автор: evilice 17.11.2014, 11:28
Всем доброго времени суток.
Адмнистрированием nginx стал заниматься не так давно, поэтому не судите строго. Столкнулся с проблемой использования переменных в кофиг. файлах.
З.Ы.: Мануалы читал, гугл изгуглил, форумы облазил. Везде пишут одно и тоже и у всех работает и как всегда только у меня одного не пашет )))). Где-то что-то упустил.

Ниже привожу пример одного кофига:
Код

server {
        listen 80;
        set $app test;
        set $path /var/projects/$app;

        server_name $app.lc;
        root $path/www;
        error_log $path/logs/error.log;
        access_log $path/logs/access.log;

        index index.php index.htm index.html;

        location ~* ^.+.(js|css|png|jpg|jpeg|gif|ico|htm|html|ttf|woff|svg|lnk)$ {
                root $path/www;
                access_log off;
                expires max;
        }

        location ~ \.php$ {
                fastcgi_pass unix:/var/run/php5-fpm.sock;
                fastcgi_split_path_info ^(.+\.php)(.*)$;
                fastcgi_index index.php;
                include fastcgi_params;
        }

        location ~ /\.ht {
                deny all;
        }
}


Проблема именно в переменных $app и $path. В ошибке говориться, что система не может найти файл по адресу "etc/nginx/$path/logs/error.log"(для примера). Если их заменить на реальные пути, то всё работает замечательно. Что я делаю не так?

Автор: _zorn_ 18.11.2014, 08:26
Для error_log нельзя использовать переменные.
http://trac.nginx.org/nginx/ticket/57

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)