Страница 1 из 1

Nginx настройки чпу в каждом домене

Добавлено: 10 дек 2014, 10:25
АлександрD
Доброго времени суток я не смог найти ответ на свой вопрос не в документации не на форуме, возможно плохо искал тогда виноват, но всё же расчитываю на Вашу помощь.
Цель подгружать чпу с папки каждого домена из файла nginx.conf:

Сделал так:

userdata/Nginx-1.7_vhost.conf

Добавил include
include "%ssitedir%/localhost/nginx.conf";
Пример:
    location / {
        root       "%hostdir%";
        index      index.php index.html index.htm;
	    default_type text/html;
	    include "%ssitedir%/localhost/nginx.conf";
    }
всё подгружает отлично но только из папки localhost, как мне указать путь к текущей папке домена? и сделать проверку на наличие этого файла, если его нет тогда не инклудить его, Заранее спасибо, рассчитываю на понимание!

Добавлено: 10 дек 2014, 11:36
vv3d0x
можна сделать как-то так:
set $config_file "%hostdir%/filename.conf";
location / {
  if (-f $config_file) {
    include $config_file;
  }
}

Добавлено: 10 дек 2014, 11:48
АлександрD
Не запускается nginx по Вашему методу

Добавлено: 10 дек 2014, 12:03
vv3d0x
тогда можна схитрить, перед строкой
include "%sprogdir%/userdata/temp/config/%httpdriver%_url.conf";
вставляем
include "%hostdir%/my_*.conf";
теперь в корне хоста создаем файл my_nginx.conf

если файл есть оно его подключит иначе просто пропустит правило и не будет вываливатся.
Правда нужно грамотно оформить сам файл, в конце файла ОБЯЗАТЕЛЬНО должна быть пустая строка и директивы не должны повторятся, а то сам нгинкс на уровне парса конфига отвалится из-за неправельного конфига, только что тестировал все работает