我最近遇到了一个错误,试图用IIS托管我的asp.net站点。我找到了一个很多人信誓旦旦的解决办法。

解决方案: 对文件夹中的文件添加具有读权限的IIS_IUSRS 修改IIS认证方式为BasicAuthentication 刷新网站。会有用的

(http://vivekthangaswamy.blogspot.com/2009/07/aspnet-website-cannot-read.html)

我在我的网里加了什么?配置文件?我以前从来没编辑过。以下是其当前内容:

<?xml version="1.0"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  http://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
    <connectionStrings>
  <add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True"
   providerName="System.Data.SqlClient" />
 </connectionStrings>
 <system.web>
  <compilation debug="true" strict="false" explicit="true" targetFramework="4.0"/>
    </system.web>
</configuration>

我的错误是:

配置错误:由于权限不足,无法读取配置文件 配置文件:\?\ C: \用户* * * * *网站视觉Studio2010 \ \文件\ \ PointsForTime \ web . config


当前回答

我给了许可,并使用ICACLS.exe,但没有工作。然后我改变了物理路径,它成功地工作了。

(IIS 8.5 windows 2012 R2)

其他回答

我在localhost/MyApp上运行一个网站,通过Visual Studio自己创建的虚拟目录构建和运行。

我的“解决方案”是删除虚拟目录,让Visual Studio重新创建它。

所有给出的答案都是有效的,并在不同的情况下工作。

对我来说,重新启动Visual Studio起作用了。

你不需要改变你的web.config中的任何东西。

问题在于文件系统权限。您的文件权限不允许IIS_IUSRS用户访问web。配置(或可能是任何文件)。更改他们在windows中的文件权限,允许IIS_IUSRS帐户访问它。

我需要添加权限到IUSR(除了ISS-IUSRS,正如其他人建议的那样)。 (参见: http://codeasp.net/blogs/raghav_khunger/microsoft - net/2099/iis - 7 - 5 - windows 7 - http错误- 401 - 3 -未经授权)

我使用subst创建了从D:到C:的映射,以便与团队中的其他开发人员保持相同的设置。这也给了我相同的错误描述。把这个拿掉,我就把它修好了。