我真的希望这不是重复的,但我无法在这里找到类似的东西。
我的问题是:我在装有 IIS 8.5 的 Windows(不确定是 2008 R2 还是 2012)服务器上有一个子目录,我想使用基本身份验证来保护它。我与服务器管理员交谈过,他为我激活了基本身份验证并为我添加了 Windows 用户。保护有效,但仅适用于目录,而不适用于单个文件。
这会导致一些奇怪的情况,例如“sub.domain.com/subsubdir/”只有使用正确的用户/密码组合才能访问,但“sub.domain.com/subsubdir/index.php”却可供所有人访问,我不知道为什么。我在 web.config 中实现此操作的方式如下:
<location path="dir/subdir">
<system.web>
<authorization>
<allow users="authorizedUser"/>
<deny users ="?" />
</authorization>
</system.web>
</location>
其中子域名指向“dir/subdir”,因此“sub.domain.com/subsubdir/”即可到达子目录。
我尝试了dir/subdir/
和dir/subdir/*
,但都导致错误。要么是我使用了错误的关键字,要么是 Google 不知道我的问题。
我甚至不确定这是否是我必须自己修复的问题(只能通过 FTP 访问)还是管理员必须更改某些 Windows 设置。有人知道这里发生了什么吗?
编辑:我对自己的子目录感到困惑,忘记了级别。不确定这是否相关,但我还是编辑了它。
答案1
如果不需要匿名用户,则应禁用目录的匿名身份验证。这将解决问题