我有2台Windows 2008 R2 x64服务器NLB,ARR,共享配置。我在网络共享中有应用程序文件。 ASP.net页面(.aspx)很好但没有CSS,图像,js工作。我也有一个.htm文件显示css和图像就好了。
在iis日志中,我看到了401.3消息。所以它似乎是权限,但不知道还有什么其他配置权限明智。
我在以下网址阅读了类似的问题:
https://serverfault.com/questions/126978/iis-7-5-401-3-access-denied
我尝试了建议的解决方案 - 似乎没有工作(除非我错过了一些东西)。非常感谢任何建议!
答案 0 :(得分:35)
好的,这就是我为解决问题所做的工作。
由于我的应用文件位于文件共享中,因此匿名用户帐户无法访问它们。这是因为默认情况下IUSR帐户用于Anoymous用户。在IIS-> Site->身份验证中,如果您已创建自定义应用程序池,则可以对应用程序池标识进行匿名身份验证,或者您可以指定一个帐户。
C:\ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ caspol.exe -m -ag 1 -url“file://// \ computername \ sharename *”FullTrust -exclusive on
答案 1 :(得分:34)
对于具有相同或类似问题的未来解决方案搜索者... 我的小asp web应用程序遇到了相同(或类似)的问题。但是使用了这个解决方案,它立即起作用了:
我的解决方案是为IIS安装“静态内容”支持。
- 转到“打开或关闭Windows功能”
- 选择“Internet信息服务”
- 选择万维网服务
- 并查看静态内容
醇>
来源:http://www.dailycomputersolutions.com/blog/index.php/2010/04/23/iis-not-showing-images-and-css/
答案 2 :(得分:9)
就我而言,我在<staticContent>
文件中有web.config
标记。我不得不评论它,运行项目(然后所有css,js,图像加载),取消注释并再次运行项目,不知何故它工作...
答案 3 :(得分:1)
除了身份验证和上述所有其他问题之外,请检查IIS中的Web应用程序的处理程序映射。罪魁祸首可能是一个劫持你的.css和.js请求的全能*处理程序。
在我的情况下,我最近在我们的一台服务器上安装了ColdFusion,并向IIS添加了托管处理程序,使得对资产文件的所有请求都抛出500内部服务器错误。我禁用了那个处理程序,一切都恢复了正常。
答案 4 :(得分:0)
对我来说,问题出在我的web.config的这一部分:
<authentication mode="Forms">
<forms timeout="2880" loginUrl="/Home?expired=true"
requireSSL="false" protection="All" cookieless="UseCookies" />
</authentication>
在不使用https的本地主机下运行时,我必须将requireSSL从true更改为false。 Boom,CSS和图像出现了。
答案 5 :(得分:0)
我忘记了权限。
https://serverfault.com/a/260778/30695
必须添加具有读取权限的IIS_IUSRS
。