添加/的简单mod_rewrite规则

时间:2013-08-30 17:40:12

标签: apache .htaccess mod-rewrite url-rewriting

我有一个网址http://domain.com/test/main/getbts?_dc=13,并希望在?标记之前添加/,以便查看网址:https://domain.net/test/main/getbts/?_dc=13

我尝试了以下重写规则:

RewriteRule ^test/main/getbts/\?_dc\=([^/]*)$ /test/main/getbts?_dc=$1 [L]

但它似乎不起作用。我的其他重写规则(我在测试我的第一条规则时没有使用过)是:

RewriteEngine On
RewriteBase /

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

有人可以给我一个提示,在哪里查看或如何重写我的规则? 非常感谢你提前!

1 个答案:

答案 0 :(得分:0)

您无法匹配RewriteRule中的查询字符串,只能匹配URI。在这种情况下,您可以忽略它,因为它会自动附加到结尾。你只需要:

RewriteRule ^admin/main/getcbts$ /admin/main/getcbts/ [L,R=301]

这会重定向浏览器,以便他们在位置栏的URI末尾看到/