如何使用 htaccess 将请求从特定 IP 地址重定向到另一个站点?

问题描述 投票:0回答:1

我要将某些请求从特定 IP 地址重定向到另一个站点。 例如,如果请求来自

xxx.xxx.xxx.xxx
xxx.xxx.xxx.xxy
,我将重定向到
https://example.com
,对于其他人,我将显示我的
index.php
.

所以我这样试了,但是不行。

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-l
    RewriteCond %{REMOTE_ADDR} xxx.xxx.xxx.xxx
    RewriteCond %{REMOTE_ADDR} xxx.xxx.xxx.xxy
    RewriteRule ^ https://example.com [L,R]
   
</IfModule>

请帮助我。

.htaccess redirect mod-rewrite
1个回答
0
投票

您可以在站点根目录 .htaccess 中使用此代码:

DirectoryIndex index.php
RewriteEngine On

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

RewriteCond %{REMOTE_ADDR} ^xxx\.xxx\.xxx\.xxx$ [OR]
RewriteCond %{REMOTE_ADDR} ^xxx\.xxx\.xxx\.xxy$
RewriteRule ^ https://example.com [L,R]

这里要注意的重要一点是使用

[OR]
子句允许匹配任何给定的 IP 地址和使用锚点 + 转义点以准确匹配 IP。

© www.soinside.com 2019 - 2024. All rights reserved.