如何使用htaccess在特定时间范围内将特定网址重定向到另一个网址?

时间:2014-09-11 17:51:43

标签: php .htaccess codeigniter redirect

我有这个网址:

http://example.com/team

我希望在此特定时间内: 00:00 00:05 (5分钟)限制对它的访问,而不是在尝试加载时/team被重定向到/home 顺便说一句:我正在使用codeigniter framework

这是我目前的htaccess file

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/system.*
RewriteRule ^(.*)$ index.php?/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?/$1 [L]

我试过......

....
RewriteCond %{TIME_HOUR}%{TIME_MIN} >0000
RewriteCond %{TIME_HOUR}%{TIME_MIN} <0005
....

但没有运气。可能我做错了但是我不明白它应该如何重定向/teams和这样的网址?

3 个答案:

答案 0 :(得分:2)

在文件中提供其他礼物规则,您可能需要:

RewriteCond %{TIME_HOUR}%{TIME_MIN} >0000
RewriteCond %{TIME_HOUR}%{TIME_MIN} <0005
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+team [NC]
RewriteRule ^ /home? [R=307,L]

您当前的文件如下所示:

RewriteEngine On

RewriteCond %{TIME_HOUR}%{TIME_MIN} >0000
RewriteCond %{TIME_HOUR}%{TIME_MIN} <0005
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+team [NC]
RewriteRule ^ /home? [R=307,L]

RewriteCond %{REQUEST_URI} ^/system.*
RewriteRule ^(.*)$ index.php?/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?/$1 [L]

我没有看到你的病情有什么不妥,看起来很好,我自己测试了。

我能看到影响它的唯一因素是它使用服务器时间而不是当地时间,除非服务器在您的计算机/本地网络/本地时间。

答案 1 :(得分:1)

我认为你所在地区正在寻找......

RewriteCond %{TIME_HOUR} 00
RewriteCond %{TIME_MIN} <05
RewriteRule ^team /home [R=307,L]

答案 2 :(得分:0)

尝试一个接一个地放一个,就像这样:

RewriteCond %{TIME_HOUR} >00
RewriteCond %{TIME_MIN} < 5
RewriteRule ^dream/?$ /promo.php [L]

参见本页:

http://www.askapache.com/htaccess/time_hour-rewritecond-time.html