根据参数的存在/不存在重定向到不同的位置

时间:2015-02-20 14:59:40

标签: .htaccess redirect

有没有办法根据是否有参数来区分重定向?还是没有?

实施例: 我想重定向所有目标 http://www.example.com/news.php?id=123http://www.example.com/old-news.php?id=123 但是如果没有给出参数,它应该重定向到 news-overview.php,路径相同。

干杯!

1 个答案:

答案 0 :(得分:0)

您需要使用mod_rewrite和%{QUERY_STRING}变量才能执行此操作:

RewriteEngine On

RewriteCond %{QUERY_STRING} ^id=
RewriteRule ^news\.php$ /old-news\.php [L,R]

RewriteCond %{QUERY_STRING} ^$
RewriteRule ^news\.php$ /news-overview\.php [L,R]

请注意,查询字符串会自动附加到重定向的URL。如果您想永久重定向,可以将R更改为R=301