NET MVC 发布项目到虚拟主机组策略阻止 csc.exe程序问题




刚开始遇到这个问题的时候我一直以为是阿里虚拟主机的问题,因为在自己本机还有在在自己的腾讯云服务器上都是正常使用的,后来翻阅了谷歌、百度终于知道是虚拟主机不支持exe,也就是说虚拟主机没有这个执行exe的权限,当然如果是在服务器上是运行的。

原因:当生成部署文件时会在bin/roslyn目录下生成一堆exe文件

bin/roslyn目录

这样导致我们会连同这些文件也上传到虚拟主机,虚拟机没有exe的执行权限,导致我们在访问网页的时候报下图错误组策略阻止

所以解决问题的办法,就是让vs发布的时候不要生成这些文件(不能直接在生成文件中删除,这样一样不行)。

然后网上查了下资料,如果不需要roslyn,可以通过nuget把Microsoft.CodeDom.Providers.DotNetCompilerPlatform和Microsoft.Net.Compilers这两个包卸载,如果将卸载掉roslyn后就不能使用C# 6.0 的语法了(不过这个不影响楼主的开发)。

下图是如何卸载这两个包:

Microsoft.CodeDom.Providers.DotNetCompilerPlatform

Microsoft.Net.Compilers

打赏

取消 我去学网

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少
微信

打开微信扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

  1. #2

    木庄网络博客(2016/10/28 11:41:03)
    不错的网站主题,看着相当舒服

  2. #1

    木庄网络博客(2016/10/14 21:02:39)
    博客做得好漂亮哦!