IIS:只能从特定子域/通过特定子域访问的目录

IIS:只能从特定子域/通过特定子域访问的目录

为了解释我的目的,这个目录结构的示例:

  • 网址:
  • C:\www\文件夹-1

域“example.com”有“C:\www\”作为主目录,域“member.example.com”有主目录“C:\www\folder-1”。

我希望所有通过“exmaple.com”连接到 ISS 服务器的客户端都无法访问“C:\www\folder-1”。

但如果我连接“member.example.com”,我应该可以访问。

PS:我正在使用 WordPress,并且想要“隐藏”wp-admin 文件夹。

答案1

为了让两个域名都响应,您需要在 IIS 中设置两个网站,每个主机头一个,并具有如上所述的主目录。

然后打开某种类型的身份验证(表单、集成窗口等),并通过您选择的身份验证方案确保用户具有对网站的所需访问权限。

对于“隐藏 wp-admin”的任务,你可以看看这个博客文章与 IIS 服务器上的此类任务相关,或者自行进行 Google。

答案2

不要那样做。

会员网站是否存在外部其他站点的文件夹结构。

否则,您将使虚拟与物理站点布局变得复杂,这可能会导致问题、错误配置和漏洞。

就其本身而言,这可以说是一种错误配置。

相反,对每个网站根目录使用完全独立的文件夹结构:

C:\WwwFiles\ExampleSite->www.example.com

C:\WwwFiles\Members->members.example.com

在 IIS 管理器中将每个网站定义为自己的实体,指向相关路径(必要时使用主机标头)。

这既能保持物理和逻辑站点隔离,又能避免人们能够遍历相同的目录结构(例如,example.com)进入会员,而不必记住保护它(或者在 URL 过滤中执行诸如隐藏段之类的操作,这也会这样做)。

相关内容