【问题标题】:How to block requests from domain other than mine?如何阻止来自我以外的域的请求?
【发布时间】:2021-03-01 03:51:42
【问题描述】:

我有一个 wordpress 网站说 mydomain.in,有人正在使用域掩码,并且未经我的许可就可以在他们的域上打开我的网站(比如说 external.com)。我有这个 .htaccess 规则,但它不起作用。

<IfModule mod_rewrite.c>
RewriteEngine On


RewriteCond %{HTTP_REFERER} !mydomain.in
RewriteRule ^.*$ - [F]

RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
RewriteRule .* https://www.mydomain.in/? [R=301,L]
</IfModule>

但它仍然从他们的域打开。这个有什么解决办法

【问题讨论】:

  • 您能否尝试输入类似RewriteCond %{HTTP_REFERER} !^http://mydomain\.com [NC] 的内容,看看是否有帮助?
  • @anubhava,先生,这是一个很好的收获,恕我直言,您可以将其发布为答案。
  • @anubhava 你能详细说明一下吗?我不明白。 RewriteEngine On RewriteRule .* mydomain.in? [R=301,L] 像这样?

标签: apache .htaccess mod-rewrite dns


【解决方案1】:

像这样:

RewriteEngine On

RewriteCond %{HTTP_HOST} !^(?:www\.)?mydomain\.in$ [NC]
RewriteRule ^ - [F]

RewriteRule ^index\.php$ - [L,NC]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]

注意这条新规则:

RewriteCond %{HTTP_HOST} !^(?:www\.)?mydomain\.in$ [NC]
RewriteRule ^ - [F]

这会检查请求的HTTP_HOST 是否不是mydomain.in,然后简单地以403 - Forbidden 状态阻止请求。

【讨论】:

  • 我是否需要重新启动 apache 或其他任何东西才能应用新规则?
  • 好的。 kapdewaale.in 这是我的域.. dsplzhyy.com 这是要被阻止的外部域。它仍在营业。
  • 解决办法是什么?
  • www.dsplzhyy.comJiangSu, China 中注册,所以显然不是你的。您的网站上似乎有黑客企图。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-23
  • 2019-07-14
  • 2018-09-17
  • 2022-01-13
  • 2015-04-27
  • 2015-06-22
相关资源
最近更新 更多