简单的RewriteRule没有变量

时间:2013-06-27 17:22:10

标签: php .htaccess mod-rewrite

我想将mysite上的一个网址从sitename.com/test123.php更改为sitename.com/article-about-stuff。没有变量需要考虑,只需一次性更改URL。这可能与mod_rewrite和RewriteRule一起使用吗?我目前有:

RewriteEngine on
RewriteRule ^article-about-stuff$ /test123.php [L,QSA]

此时用户被重定向,但网址已更改为test123.php。我想保留网址。

我还希望能够将任何流量重定向到test123.php/article-about-stuff 我怎样才能简单地写出目标网址并用更漂亮的网址链接到它?

2 个答案:

答案 0 :(得分:4)

将以下指令添加到.htaccess(这会将请求从test123重定向到article-about ...)

   RewriteCond %{ENV:REDIRECT_STATUS} !200
   RewriteRule ^test123\.php$ /article-about-stuff [NC,R=301,L]

注意:第一个条件确保没有进行先前的重定向(以防止重定向循环)

答案 1 :(得分:0)

您的问题的答案是“是的,这是可能的”,但我不确定为什么您需要mod_rewrite来进行这样简单的重定向。

RedirectMatch ^test123\.php$ /test123.php

请参阅When Not To Use Rewrite