我试图通过在htaccess文件中编写RewriteCond规则来禁止某些机器人。如果添加以下内容,下列规则集是否正确:
## block traffic from particular referrers
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://(www\.)?example-subdomain.parent.com [NC,OR]
RewriteCond %{HTTP_REFERER} ^http://(www\.)?example-2-domain.net [NC]
RewriteRule (.*) - [F]正如你所看到的,我希望通过域名而不是IP地址来禁止。如果我删除(www.)部分?
更新:我的问题主要与RewriteCond正确的urls语法有关。
谢谢
发布于 2015-04-21 02:31:38
是。您可以将"http://(www。)http://(www。)“替换为".*”,只要您不希望该域名出现在其他合法引用字符串中。我还建议将.*放在.com或.net之后,以防任何斜线或路径被标记在那里。
发布于 2015-04-21 02:37:55
如果您知道父域并想阻止它及其所有子域:
^https?://([^.]+\.)*exampledomain\.comhttps://serverfault.com/questions/679228
复制相似问题