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


当前回答

当我试图与另一个用户共享站点根文件夹时,我也遇到了同样的问题。某些文件夹失去权限。 因此,我按照Afshin Gh建议的步骤向IIS_IUSRS组添加权限。 问题是这个小组不适合我。我用的是windows 7。

我所做的只是改变了一些步骤:

右键单击父文件夹(失去权限的人), 属性=>安全=>在“组或用户名:”中, 单击Edit…… 将打开“权限文件夹”窗口。 在“组或用户名:”中按ADD…btn, 输入Authen并按检查名称, 您将看到完整的组名“Authenticated Users” 按ok =>应用。 这将再次启用特权。

这对我很管用。

其他回答

我在网上也遇到了同样的权限问题。配置文件。

但是,我的问题是由于IIS无法加载配置文件,因为它包含URL重写规则,并且我没有在新服务器上安装IIS URL重写模块。

解决方案是安装重写模块。

转到父文件夹,右键单击并选择属性。选择“安全”选项卡,编辑权限并添加。单击“高级”和“立即查找”。选择“IIS_IUSRS”,单击“确定”,然后再次单击“确定”。确保你有检查写。单击“确定”,再单击“确定”。

完成工作!

当IIS应用程序有一个物理路径包含正斜杠/而不是反斜杠\的虚拟目录时,我们就遇到了这种情况。这是在我们的持续交付过程中使用IIS的powershell管理API意外完成的。

错误配置示例- applicationHost.config . Config

<application path="/MySite/MyService" applicationPool="MyAppPool" enabledProtocols="http">
    <virtualDirectory path="/" physicalPath="C:\inetpub\MySite/MyService" />
</application>

确保physicalPath属性不包含正斜杠/,只包含反斜杠\

- applicationHost.config . Config

<application path="/MySite/MyService" applicationPool="MyAppPool" enabledProtocols="http">
    <virtualDirectory path="/" physicalPath="C:\inetpub\MySite\MyService" />
</application>

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

我在Windows 10上使用microsoftaccount\email@contosa.com帐户运行应用程序池时遇到了这个问题(例如,用Microsoft帐户而不是本地帐户登录PC)。

显然在我的电脑上有些东西损坏了;删除IIS并重新添加它没有任何作用(因为IIS元数据库似乎没有被删除)。删除和重新创建应用程序池也无济于事。

我的解决方案是创建一个新的应用程序池,使用相同的设置,但名称不同。这为我解决了问题;显然,有些东西已经损坏了与appool,即使删除它,重新添加它与相同的名称不会修复。