尝试使用查询参数中包含 URI 文件类型的其他查询进行重定向



>我正在尝试弄清楚如何翻译

/mainpage.html -> /index.php?page=_.mainpage
/mainpage.html?paramX=some.html -> /index.php?page=_.mainpage&paramX=some.html
/mainpage/subpage.html -> /index.php?page=mainpage.subpage
/mainpage/subpage.html?paramY=some.html -> /index.php?page=mainpage.subpage&paramY=some.html

我正在使用

RewriteEngine On
RewriteRule ^([^/.]+).html$ /index.php?page=_.$1 [QSA,L]
RewriteRule ^([^/.]+)/([^/.]+).html$ /index.php?page=$1.$2 [QSA,L]

我的问题是,只要没有给出查询参数,它就可以正常工作 - 知道吗?

编辑:参数只是一堆多个参数的占位符。

编辑 2:它实际上有效 - 我在 PHP 中的另一个 GET 参数上触发了 PHP 代码,重定向到"/",这使它看起来损坏了。

编辑3:添加了 2 个更多解析示例

您可以使用:

RewriteEngine On
RewriteRule ^([^/.]+).html$ /index.php?page=_.$1 [QSA,L,NC]
RewriteRule ^([^/]+)/([^/.]+).html$ /index.php?page=$1.$2 [QSA,L,NC]

最新更新