2010-02-12 113 views
1

我有一个ASP MVC(1.0)应用程序。它通过visual studio和运行IIS6的开发服务器在本地很好地工作。但是,当我尝试部署到测试服务器(在Windows Server 2008 R2的运行IIS7)我只得到:部署一个ASP MVC应用程序到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有权访问网站目录和临时目录,这是我通过google找到的解决方案,但它没有帮助。我完全被难住了。有任何想法吗?

亚当

回答

0

那么,它刚刚怪异,当我们尝试了不同的版本,我们的应用程序 - 我们回去,我们也早看到了“无法读取web.config中”错误然后消失了与上面的错误的版本。当我们确信它必须是一个权限问题很长一段时间后,我们最终发现,当我们将应用程序压缩到服务器时,web.config(以及谁知道还有什么)以某种方式被破坏。一个焦油然后拉链,它只是工作。以前从未有过使用ZIP的问题,但是我们只需要使用tar.zip

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

+0

是的。我们确实在服务器上安装了MVC框架(但它仍然是一个很好的提示!)。看到我的回答发生了什么。 – Adam 2010-02-17 08:20:38