刚开始遇到这个问题的时候我一直以为是阿里虚拟主机的问题,因为在自己本机还有在在自己的腾讯云服务器上都是正常使用的,后来翻阅了谷歌、百度终于知道是虚拟主机不支持exe,也就是说虚拟主机没有这个执行exe的权限,当然如果是在服务器上是运行的。
原因:当生成部署文件时会在bin/roslyn目录下生成一堆exe文件
这样导致我们会连同这些文件也上传到虚拟主机,虚拟机没有exe的执行权限,导致我们在访问网页的时候报下图错误
所以解决问题的办法,就是让vs发布的时候不要生成这些文件(不能直接在生成文件中删除,这样一样不行)。
然后网上查了下资料,如果不需要roslyn,可以通过nuget把Microsoft.CodeDom.Providers.DotNetCompilerPlatform和Microsoft.Net.Compilers这两个包卸载,如果将卸载掉roslyn后就不能使用C# 6.0 的语法了(不过这个不影响楼主的开发)。
下图是如何卸载这两个包:
木庄网络博客(2016/10/28 11:41:03)
不错的网站主题,看着相当舒服