在一个文件中配置 nginx 中的多个域

在一个文件中配置 nginx 中的多个域

我还是配置 nginx 的新手。

是否可以在一个文件中配置多个域,并且它们共享大部分相同的配置?
例如,我想配置两个基于一个应用程序的域,一个域需要基本身份验证,另一个域则不需要。
我想做这样的事情,但我认为这行不通:

已启用站点/mysite

server {

    listen 127.0.0.1:80 default_server;
    server_name www.mysite.com;
    include sharedconf.conf;
}


server {
    listen 127.0.0.1:80;
    server_name www.mysite.co.jp;
    auth_basic "restricted";
    auth_basic_user_file /etc/nginx.htpasswd;
    include sharedconf.conf;
}


共享配置文件

location / {
    proxy_pass_header Server;
    #... bunch of config line ...

}

答案1

是的,效果很好。

我假设您使用的是 Debian 或 Debian 衍生的 Linux 发行版。那么您无法将 放入sharedconf.conf/etc/nginx/sites-enabled放入/etc/nginx/conf.d,因为这些目录中的文件包含在nginx.confDebian 上的 main 中。

相关内容