0

我正在尝试在 IMPERSSPAGES CMS 中为 .htaccess 中的 url 添加重写规则。我有example.com/obj?id=123,我希望它看起来像example.com/obj/123 是否有可能,因为htaccess中已经有一个指向index.php的重新布线规则:

<IfModule mod_rewrite.c>
RewriteEngine on

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

4

2 回答 2

1

您必须在末尾添加重定向标志并在开头添加目录斜杠才能使其正常工作。否则最后一条规则仍然会被调用,IP 路由会抛出 404 错误。

RewriteRule ^obj/(\d+)/?$ your-script.php?id=$1 [L]

后:

RewriteRule ^obj/(\d+)/?$ /your-script.php?id=$1 [R,L]
于 2015-06-16T23:17:38.157 回答
0

您可以使用:

RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]

RewriteRule ^obj/([0-9]+)/?$ obj?id=$1 [L]
RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [L]
于 2014-11-14T01:10:03.890 回答