gpt4 book ai didi

nginx: [emerg] "server"指令在这里不允许

转载 作者:行者123 更新时间:2023-12-02 19:52:52 30 4
gpt4 key购买 nike

我已经重新配置了 nginx,但无法使用以下配置重新启动它:

server {
listen 80;
server_name www.example.com;
return 301 $scheme://example.com$request_uri;
}

server {
listen 80;
server_name example.com;

access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;

location /robots.txt {
alias /path/to/robots.txt;
access_log off;
log_not_found off;
}

location = /favicon.ico { access_log off; log_not_found off; }

location / {
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 30;
proxy_read_timeout 30;
proxy_pass http://127.0.0.1:8000;
}

location /static {
expires 1M;
alias /path/to/staticfiles;
}
}

运行sudo nginx -c conf -t测试配置后,返回以下错误。

nginx: [emerg] "server" directive is not allowed here in    /etc/nginx/sites-available/config:1
nginx: configuration file /etc/nginx/sites-available/config test failed

最佳答案

那不是 nginx 配置文件。它是 nginx 配置文件的一部分

nginx 配置文件(通常称为 nginx.conf )将如下所示:

events {
...
}
http {
...
server {
...
}
}

server block 包含在 http 内 block 。

通常,通过使用 include 将配置分布在多个文件中。用于拉入其他片段的指令(例如从 sites-enabled 目录)。

使用sudo nginx -t测试完整的配置文件,该文件从 nginx.conf 开始并使用include拉入额外的片段指令。

参见this document了解更多信息。

关于nginx: [emerg] "server"指令在这里不允许,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41766195/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com