是否可以为所有服务器定义公共位置?从nginx location文档我看到该位置取决于服务器.我想做这样的事情:

...
http {
    error_page  404                    /error/404.html;
    error_page  500 501 502 503 504    /error/50x.html;

    location ^~ /error/ {
        internal;
        root /var/www/nginx/errors;
    }

    server {
        ...
    }

    server {
        ...
    }
    ...
}

我试过设置:

http {
    ...
    root /var/www/nginx/errors; # also with root /var/www/nginx
    ...
}

没有成功:始终显示nginx默认错误页面.
最佳答案

Is it possible to define a common location for all servers?

没有.

您可以创建单独的文件并将其包含在所有服务器中.

/etc/nginx/error-location.inc:

location ^~ /error/ {
    internal;
    root /var/www/nginx/errors;
}

然后:

server {
    ...
    include error-location.inc;
}

server {
    ...
    include error-location.inc;
}

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。