我最近遇到了一个错误,试图用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


当前回答

将流程模型标识更改为LocalSystem为我解决了这个问题。如果右键单击应用程序池并选择“高级设置”,就可以找到这个设置。我正在运行iis7.5。

其他回答

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

使IIS_IUSRS组可以访问该文件。右键点击你的网页。展开属性,在“security”页签下添加“IIS_IUSRS”。给予组读/写权限。

当组不可用时,将IIS_IUSRS替换为ComputerName\IIS_IUSRS

进入IIS(站点) 右击网站内的项目。输入图像描述 在这里

点击编辑权限。

去保安那儿。 点击编辑按钮。 单击添加按钮。类型COMPUTER_NAME \ IIS_USERS 或 点击前进。 单击“立即查找”按钮。 还有选择的余地。 选择IIS_USERS,点击ok…ok....ok .

我也遇到过同样的问题,但这些解决方案都对我不起作用。我一直得到相同的错误和一个关于“未能开始监视更改”在事件查看器。

唯一有效的方法是复制文件夹并将其重命名。它一定是一个损坏的文件夹在Windows IIS/ASP。NET无法访问。

不像IIS_IUSRS那样授予所有IIS用户访问权,您也可以使用站点仅授予应用程序池标识访问权。这是微软推荐的方法,更多信息可以在这里找到:

https://support.microsoft.com/en-za/help/4466942/understanding-identities-in-iis

https://learn.microsoft.com/en-us/iis/manage/configuring-security/application-pool-identities

Fix:

首先查看上面的配置文件参数,以确定需要访问的位置。在本例中,需要访问整个发布文件夹。右键单击文件夹,选择属性,然后选择Security选项卡。

点击编辑…然后添加....

现在看看Internet信息服务(IIS)管理器和应用程序池:

在我的情况下,我的网站在LocalTest应用程序池下运行,然后我输入名称IIS appool \LocalTest

按“检查名称”键,就会找到用户。

给用户所需的访问权限(默认:读取和执行,列出文件夹内容和读取),一切都应该工作。