nginx игнорирует мою директиву include?

В настоящее время я перехожу с Apache на nginx. У меня есть несколько доменов, которые будут размещаться на одном компьютере с одним IP-адресом. Хотя я настроил nginx --prefix=/my/path Кажется, что nginx не включает мои файлы конфигурации vhost.

Мой текущий nginx.conf выглядит так:

http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    gzip  on;

    # Don't show server version.
    server_tokens off;

    index index.html index.htm index.php;

    # Default server
    server {
        listen          81 default;
        server_name     _;
        access_log      logs/access.log main;
        server_name_in_redirect  off;
        root  html;
    }

    ## Load virtual host conf files. ##
    include conf/vhosts/*/*.conf; # config/vhosts/domain.com/domain.conf ; subodmain.conf and etc

}

И это единственный конфиг vhost, который я имею в config / vhosts / domain.com / domain.com.conf:

server {
    listen          81;
    server_name     domain.com;
    access_log      logs/domain.com.access.log main;

    root            "/www/domain.com/htdocs";
    index           index.html;
}

Я также попытался установить абсолютный путь к файлу конфигурации, но он тоже не работал. Все запросы находятся на сервере по умолчанию. Если, однако, вы вставляете содержимое conf/vhosts/domain.com/domain.com.conf в conf/nginx.conf http{} домен работает просто отлично.

Я пытался понять это уже пару часов, но, думаю, я что-то не так делаю?

2 ответа

Решение

Как говорится в документации.

Начиная с версии 0.6.7, пути относятся к каталогу файла конфигурации nginx nginx.conf, но не к каталогу префикса nginx.

Если вы проверите, что путь указан относительно файла конфигурации nginx, он все равно не будет работать?

Ответ выше является неправильным на данный момент. Согласно документам:

nginx использует только абсолютные пути, все относительные пути в файлах конфигурации относятся к --prefix == PATH.

http://nginx.org/en/docs/configure.html

Другие вопросы по тегам