发布ASP.NET MVC应用程序:读取配置文件权限

时间:2009-10-05 18:25:36

标签: asp.net-mvc

将MVC应用程序发布到服务器甚至个人计算机时,我遇到了一些麻烦。

服务器安装了MVC框架,这不是问题,我也明确安装了它。

我本地计算机上的问题显然是权限问题,但我不确定需要什么权限...我尝试将IUSR添加到应用程序本身。

iis错误消息是: 模块IIS Web核心 通知BeginRequest 处理程序尚未确定 错误代码0x80070005 配置错误由于权限不足,无法读取配置文件 配置文件〜\ Visual Studio 2008 \ Project \ MVCApp \ web.config

并且在尝试查看应用中的任何内容时,服务器上显示“无法找到该页面”。

这也是一个表单身份验证应用程序,它拒绝除了经过身份验证的用户之外的所有内容

2 个答案:

答案 0 :(得分:3)

您需要启用通配符映射,以便它可以解析路由。

看一下选项1: http://blog.codeville.net/2008/07/04/options-for-deploying-aspnet-mvc-to-iis-6/

基本上,IIS正在尝试在给定的URL上查找文件,但它不存在,因为它们是MVC路由。您需要告诉IIS将请求移交给ASP.Net路由处理程序,而不必担心检查文件系统上是否存在该文件。 (它永远不会存在)

alt text

答案 1 :(得分:1)

我发现将MVC 2项目升级到MVC 3会导致sam错误,如上所述:

  

模块IIS Web核心通知BeginRequest处理程序尚未确定错误代码0x80070005配置错误由于权限不足而无法读取配置文件配置文件〜\ Visual Studio 2010 \ Project \ MVCApp \ web.config

解决这个问题的方法是在我的localhost IIS中删除项目的虚拟目录,然后清理并重建项目。

请注意!这是VS2010中的一个MVC2项目 - 而不是VS2008。