如何阻止来自我以外的域的请求?
How to block requests from domain other than mine?
我有一个 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>
但它仍然从他们的域中打开。这个有什么解决办法
像这样:
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
状态的请求。
我有一个 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>
但它仍然从他们的域中打开。这个有什么解决办法
像这样:
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
状态的请求。