【问题标题】:Redirect a specific IP address to a special page of my homepage with .htaccess使用 .htaccess 将特定 IP 地址重定向到我主页的特殊页面
【发布时间】:2010-03-13 17:41:07
【问题描述】:

如何使用 .htaccess 将特定 IP 地址的访问者转发到我服务器上的网页?

这个例子导致了一个无限循环:

RewriteCond %{REMOTE_ADDR} ^123\.\123\.123\.123$
RewriteRule ^(.*)$ /specialpage.php [R,L] 

我在网上找到了这个,但它不起作用:

SetEnvIf REMOTE_ADDR 123.123.123.123 REDIR="redir"
RewriteCond %{REDIR} redir
RewriteRule ^(.*)$ /specialpage.php

注意:我的网站由 .htm、html 和 .php 页面组成。

非常感谢您的帮助。

【问题讨论】:

    标签: apache .htaccess mod-rewrite redirect


    【解决方案1】:

    当你已经在特殊页面时添加一个条件重写:

    RewriteCond %{REMOTE_ADDR} ^123\.\123\.123\.123$
    RewriteCond %{REQUEST_URI} !/specialpage.php
    RewriteRule ^(.*)$ /specialpage.php [R,L] 
    

    【讨论】:

    • 几乎!不幸的是,现在不再加载 CSS。有什么帮助吗?
    • @jim-knopf 我编辑了这个答案以克服 CSS/JS 问题,但由于某种原因它没有被接受。万一其他人偶然发现了这个线程,答案还应该包括以下行(就在 RewriteRule 上方:RewriteCond %{REQUEST_URI} !\.(jpe?g?|png|gif|css|js) [NC]
    【解决方案2】:

    刚刚想出了解决办法:

    RewriteCond %{REMOTE_ADDR} ^123\.\123\.123\.123$
    RewriteCond %{REQUEST_URI} !/specialpage.php
    RewriteRule .*\.(htm|html|php)$ /specialpage.php [R,L]
    

    感谢您的帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-18
      • 2017-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多