ASP.NET Core发布网站报错HTTP Error 502.5
我在以前的一篇文章里提到过如何发布ASP.NET Core网站的一部分。这次生产环境要部署ASP.NET Core网站,网站报错HTTP Error 502.5。通过Windows日志查看到错误信息,dotnet无法启动项目.dll文件,缺少配置节点。
我就纳闷了,我在测试环境上安装了dotnet-sdk-2.1.3-win-x64.exe
以及DotNetCore.2.0.0-WindowsHosting.exe
安装程序后,重启IIS,添加网站之后就没有什么问题了。但是为什么生产环境一直报错HTTP Error 502.5,说我缺少配置文件?
那么我只能修改一下配置文件app.config
,看看到底怎么回事。奇怪的是,修改了app.config
文件的内容后,竟然没有生效,就算重启IIS也无效。经过仔细对比后我发现原来.NET Core会在发布程序的时候,自动生成一个项目同名的.dll.config
文件,它的内容和app.config
一样,但是网站读取的竟然是.dll.config
文件。好吧,难怪我修改了app.config
的内容没有效果,我也总算明白了为什么会报错,缺少配置节点,原来是我没有将.dll.config
配置文件复制到生产环境上去。
总结,老老实实地将ASP.NET Core发布时生成的配置文件,都拷贝到生产环境的网站目录下。