nginx:[emerg]未知指令“;服务器";在/etc/nginx/sites enabled/default:1中

nginx:[emerg]未知指令“;服务器";在/etc/nginx/sites enabled/default:1中,nginx,asp.net-core,Nginx,Asp.net Core,我正在尝试将Nginx安装到我的ASPNET核心WebApi。但我总是出错 当我尝试检查我的配置时,我得到: ubuntu@ip-172-26-12-97:~$ sudo nginx -t nginx: [emerg] unknown directive "server" in /etc/nginx/sites-enabled/default:1 nginx: configuration file /etc/nginx/nginx.conf test failed 我试图研究以下问题: 和

我正在尝试将Nginx安装到我的ASPNET核心WebApi。但我总是出错

当我尝试检查我的配置时,我得到:

ubuntu@ip-172-26-12-97:~$ sudo nginx -t
nginx: [emerg] unknown directive "server" in /etc/nginx/sites-enabled/default:1
nginx: configuration file /etc/nginx/nginx.conf test failed
我试图研究以下问题:

我的默认配置如下所示:

server {
 listen 80;
 location / {
 proxy_pass http://localhost:5000;
 proxy_http_version 1.1;
 proxy_set_header Upgrade $http_upgrade;
 proxy_set_header Connection keep-alive;
 proxy_set_header Host $host;
 proxy_cache_bypass $http_upgrade;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_set_header X-Forwarded-Proto $scheme;
 }
}
安装Nginx并转到端口80上的默认Nginx服务器可以正常工作。但是,当我开始上传自己的配置并进行更改时,它就会中断

步骤:

sudo chown ubuntu:ubuntu /etc/nginx/sites-available/default
所以我可以使用SCP上传新的默认站点

scp -o StrictHostKeyChecking=no -i {pemFile} -qrp C:/path/. ubuntu@{hostname}:/etc/nginx/sites-available/

两者似乎非常相似,没有任何结果。

嗯。在把这个问题放在Stackoverflow上一段时间后,我试图在我的计算机上启动虚拟机。创建一个内容完全相同的配置文件。将粘贴从我的Windows计算机复制到我的linux计算机。将该文件上传到我的linux服务器上,它运行正常

所以简而言之,在没有我能看到任何东西的情况下,Windows处理了文件的内容。我已在此处上传了该文件的工作版本:
我也面临同样的问题。后来,我使用Filezila上传了配置文件,它成功了

我也有同样的问题,我用Notepad++打开nginx.conf并将其转换为ANSI来修复


格式>转换为ANSI

要了解原因,您需要查看文件包含在总体配置中的位置。前面包含的文件中可能缺少关闭
}
,这使得
服务器
指令似乎嵌套在错误的块中。使用
nginx-T
(大写
T
)查看所有包含文件的整个配置。ubuntu@ip-172-26-12-97:~$sudo nginx-T nginx:[emerg]在/etc/nginx/sites enabled/default:1 nginx:configuration file/etc/nginx/nginx.conf中的未知指令“server”测试失败是我得到的全部结果。