【发布时间】:2018-12-11 20:43:05
【问题描述】:
我们在 Digital Ocean 上有一个网站 example.com。似乎有一个用户使用我们的 IP 地址为他们的站点启用了域掩码,或者他们只是将他们的域 domain.com 指向我们的 sute。我们不希望 domain.com 显示我们的网站,所以我想阻止 domain.com。
我尝试使用本指南: https://perishablepress.com/eight-ways-to-blacklist-with-apaches-mod_rewrite/ ,但似乎这不适用于域掩码。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://(www\.)?.*(-|.)?domain(-|.).*$ [NC]
RewriteRule ^(.*)$ - [F,L]
</IfModule>
我看到了这个例子:https://serverfault.com/questions/796674/block-masking-url-from-nginx/ ,但我不知道如何将其翻译成 Apache。
【问题讨论】:
-
通常的方法不是您必须主动管理的黑名单,而是为您的有效主机名(“域”)配置显式主机,然后为其他所有内容配置 apache 的默认主机简单地阻止。
-
@arkascha 我该怎么做?
-
您可以在 apache http 服务器中配置任意“主机”。在您的配置中定义的第一个被认为是默认值,所有对定义了 no 显式主机的主机名的请求都将由该默认主机提供服务。所以去吧,为你想要服务的有效主机名定义一个明确的主机作为 second 主机和一个简单地阻止所有请求的默认主机。
-
我建议你开始阅读文档。它具有卓越的品质,是开源软件的典型代表,并附有很好的示例。
-
注意主机的顺序。起始 http 服务器读取的 first 主机充当默认主机。您还可以通过监视它们各自的访问日志文件来检查哪些主机服务于实际请求。
标签: apache domain-masking