今天在将使用.netcore MVC开发的网站部署到IIS上时,遇到以下问题
- 1.MVC网站发布之后没有View文件夹
- 2.网站发布之后出现500.19错误
不截图了,错误消失了,截不到了。。。
现将解决办法写在下面:
对于问题1.MVC网站发布之后没有View文件夹
这个需要修改项目的.csproj文件,具体修改方法如下:
用记事本打开项目的.csproj文件,在PropertyGroup节点下面添加
<MvcRazorCompileOnPublish>false</MvcRazorCompileOnPublish>
- 1
之后重新生成项目,然后重新发布,就可以看到Views文件夹了
对于问题2.网站发布之后出现500.19错误
解决办法如下:
我们打开网站发布后的目录,有个web.config文件,该文件里面有一句话
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
- 1
可以看到有个modules属性的值为AspNetCoreModule,但是在IIS中的模块中没有这个组件,这是导致错误出现的原因,
此时需要安装AspNetCoreModule组件,也就是dotnet-hosting-3.0.0-win,我资源有,但是需要积分,积分不宽裕就不要在这下载了,官网也有,可自行下载
下载完成之后,IIS模块中会显示AspNetCoreModule,我这里安装的是V2版本,因此显示名称是V2
然后修改web.config中的上述代码段中的modules值为AspNetCoreModuleV2就行了
至此,重启网站,500.19错误就消失了。
最后,使用.netcore发布网站时,别忘记将应用程序池的.net CLR版本设置为无托管代码