将ASP.NET MVC4 App部署到GoDaddy编译器问题

Kei*_*lin 36 asp.net web-hosting asp.net-mvc-3 asp.net-mvc-4

已经看过几篇关于向GoDaddy部署MVC应用程序的帖子.他们似乎都没有解决我们遇到的问题.我们遵循了有关检查运行时版本,IIS管道模式,发布和将本地复制到true的建议,因此所有这些都适用于GoDaddy.Com.

我们遇到的问题是,当我们尝试访问该站点时,我们会收到组策略异常,因为ASP.NET运行时正在尝试调用C#编译器.

[Win32Exception (0x80004005): This program is blocked by group policy. For more information, contact your system administrator]

[ExternalException (0x80004005): Cannot execute a program. The command being executed was "C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe".........

我们已经完成了发布设置并选择预编译该站点.这没有解决问题.查看了该站点,并且没有部署CS文件.该Global.asax文件确实引用了一个代码隐藏文件.由于我们预编译了网站,我们尝试删除该global.asax文件,但也无法解决问题.

任何想法都会很棒.

Neo*_*779 102

几个月来我一直在努力解决同样的问题.最后解决了它.在godaddy的plesk中,我更改了ASP.Net设置.首先将CAS-trustlevel更改为Full.然后我在Web.config我的项目中更改了以下内容:

  • 将信任级别添加到system.web
  • 删除system.codecom中的编译器
 <system.web>
    compilation debug="true" targetFramework="4.5.2"/>
    <httpRuntime targetFramework="4.5.2"/>
    <trust level="Full"/>             <!-- Just add this to the webconfig -->
 </system.web>

 <system.codedom>
              <!-- All is removed between the 2 tags-->
 </system.codedom>
Run Code Online (Sandbox Code Playgroud)

这解决了我的问题.

  • ^^这就是答案.设置完全信任,并删除`<system.codedom>`节点中的所有内容.你的答案未经表决. (4认同)
  • 谢谢,我一直在寻找解决方案大约2天 (3认同)

Nic*_*nia 18

您必须从Web配置中删除编译信息,它才会起作用.

除了预编译(选中发布设置中的框),还要将以下内容添加到Web.Release.config中:

<system.web>
  <trust level="Full" xdt:Transform="Insert" />
</system.web>
<system.codedom xdt:Transform="Remove" /> <!-- No compiling on server, GoDaddy blocks it. -->
Run Code Online (Sandbox Code Playgroud)

更新(2017年1月27日):似乎(至少在我的帐户上)不再需要删除system.codedom.


Bal*_*til 8

我在GoDaddy托管上遇到了同样的问题.

要修复它,请按照以下步骤操作

步骤1:在Web Deploy设置中选择"在发布期间预编译".

步骤2:<trust level="Full" /><system.web>Web.config中


uti*_*sit 5

我删除了Roslyn nuget包,如下面链接中所述,但它是一个工作场所.

https://social.msdn.microsoft.com/Forums/en-US/442b100a-2b88-4ac4-b655-0c1345791f15/roslyn-cscexe-web-api-2-on-hosting-server?forum=msbuild

使用visual studio 2015模板中的干净mvc 5 Web项目会发生此问题.我联系了godaddy的支持,让我们看看他们做了什么.