我有一个ASP MVC(1.0)应用程序。它通过visual studio和运行IIS6的开发服务器在本地运行良好。但是当我尝试部署到测试服务器(在Windows Server 2008 R2上运行IIS7)时,我只得到:
"Could not load file or assembly '<ApplicationName>' or one of its dependencies. Access is denied" (where <ApplicationName> is the name of my application).
接下来是“FileLoadException”,“ConfigurationErrorsException”和两个“HttpException”(都带有与上面相同的消息)
我通过发布部署到一个空目录,然后将其内容压缩并传输到测试服务器上的站点目录。如果我将目录内容复制到我的IIS安装它工作正常。我已经检查过networkservices有权访问网站目录和临时目录,这是我通过谷歌找到的解决方案,但它没有帮助。我完全难过了。有什么想法吗?
亚当
答案 0 :(得分:3)
您的服务器是否已在GAC中安装了System.Web.Mvc.dll?
如果没有,您需要在发布之前将项目中对System.Web.Mvc.dll的引用标记为“Copy Local = true”。只需右键单击参考,您就会看到该选项。否则,System.Web.Mvc将不在您的bin目录中。
我在这里写到:http://haacked.com/archive/2008/11/03/bin-deploy-aspnetmvc.aspx
答案 1 :(得分:0)
嗯,当我们尝试使用不同版本的应用程序时,它只是更奇怪了 - 我们回到了“无法读取web.config”错误,我们之前也看到过这个错误然后因为出现上述错误的版本而消失了。在确信它必须是权限问题很长一段时间后,我们最终发现当我们压缩应用程序以将其传输到服务器时,web.config(以及谁知道还有什么)已经以某种方式被破坏。一个tar然后拉链,它只是工作。之前从来没有遇到过ZIP的问题,但是我们只会使用tar.zip前进