htaccess:使用GET的操作重定向网址?

时间:2014-06-03 10:00:18

标签: php apache .htaccess mod-rewrite redirect

首先让我说:我几乎没有htaccess的经验,所有代码对我来说都是胡言乱语。

我有一个表单,可以将访问者发送到这样的页面: mysite.com/date.php?day=2014-06-03

我希望它们自动重定向到: mysite.com/2014-06-03

我目前在我的htaccess中有以下代码,它已经使页面工作,旧页面还没有被重定向。

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* date.php/?day=$0 [PT] 

如果有人能看一眼,我真的很高兴。看起来这应该相当容易,但所有类似的问题对我来说都有点不同或太难了。

编辑:

使用此问题更改了我的表单: Clean URLs for search query?

1 个答案:

答案 0 :(得分:0)

RewriteRule指令不对查询字符串进行操作。它只适用于路径。 您需要在查询字符串上添加条件:

RewriteCond %{QUERY_STRING} ^day=([^&]+)
RewriteRule $/date.php^ /date.php/?day=%1 [R=301,L]