我有一个用户友好(http://example.com/root1/root2?root3=abc25
),我想将其转换为另一个网址(http://example.com/index.php?request=root1/root2?root3=abc25&root4=abcd
)
这是运行此代码时的代码我得到此网址( http://example.com/index.php?request=root1/root2
)
我不知道我的错误在哪里,请指导我。
Options -Indexes
Options +FollowSymLinks
Options -MultiViews
DirectoryIndex index.php
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?request=$1 [QSA,L]
</IfModule>
答案 0 :(得分:0)
您的重写规则看起来像MVC前端控制器的标准票价。您是偶然使用框架吗?在这种情况下,答案取决于框架如何处理路由。
如果您没有使用框架,那么您的 index.php 文件将以某种方式确定如何处理http://example.com/index.php?request=root1/root2?root3=abc25&root4=abcd
的请求,以使其行为方式相同http://example.com/root1/root2?root3=abc25
确实如此。