在Windows 2008 R2 x64上,我遇到了IIS 7.5这个奇怪的问题。 我在IIS中创build了一个站点,并手动创build了一个testing文件index.html,一切正常。 当我尝试进行部署时,我将所有文件从本地PC复制到IIS服务器,尝试访问index.html(这是正确部署的文件)并获取401.3访问被拒绝错误。 然后,我尝试手动重新创buildindex.html并将内容复制到这个新创build的文件,该页面可以再次访问…我只是无法弄清楚这一点。 所以问题是IIS 7.5不能从其他PC复制的文件。 我试图重置/应用权限设置到复制的文件夹/文件,但没有任何工作。 请帮忙。 谢谢! 顺便说一下,我复制的文件只是一些HTML剪辑,即通用的HTML,CSS和图像文件,没有什么特别的。
听起来像是一个文件权限问题给我。 确保您确实将文件复制到wwwroot文件夹,而不是从另一个文件夹移动它们。 当你复制文件时,他们将自动从父文件夹inheritance权限,但是如果你移动文件,他们将保留他们的原始权限。 我build议首先将文件复制到计算机上的文件夹,然后从那里复制到wwwroot文件夹。
另一件事是在将文件复制到计算机之前压缩文件,然后将它们复制到本地驱动器,然后将它们复制到wwwroot文件夹中。
IIS 7.5应该给你详细的错误,你有访问被拒绝。 如果这没有帮助,请使用进程监视器并再次重现错误,并查找任何访问被拒绝。
我只是在同一个问题上挣扎。 我从另一台计算机部署文件到IIS 7.5服务器,并获得401访问被拒绝的错误。 我尝试添加应用程序域名身份帐户(更多在这里: http : //stevesmithblog.com/blog/working-with-application-pool-identities/ ),networking服务帐户等,这些都没有工作。
什么为我工作是使用默认权限(读取和执行,列出文件夹内容,阅读)将IUSR帐户添加到网站的文件夹(recursion)。
问题不在于授权/authentication,而在于现在pipe理IIS的模块。 在system.webServer里面,你应该把runAllManagedModulesForAllRequests设置为false,这样你就可以显示所有的图像/ css而没有authentication问题。
在ASP.NET网站中,以前必须将runAllManagedModulesForAllRequests的值设置为true以支持路由。 但是, 使用Service Pack更新IIS 7后 ,使用ASP.NET路由时, runAllManagedModulesForAllRequests的值可以设置为false或省略。
参考。 http://www.iis.net/configreference/system.webserver/modules
PS不要忘记添加以下行到我的web.config文件的AppSettings部分:
<add key="autoFormsAuthentication" value="false"/> <add key="enableSimpleMembership" value="false"/>
在这里看到我的答案 。 这个IMO是Windows Server 2008 R2中的一个重大改变。