>我正在尝试弄清楚如何翻译
/mainpage.html -> /index.php?page=_.mainpage
/mainpage.html?paramX=some.html -> /index.php?page=_.mainpage¶mX=some.html
/mainpage/subpage.html -> /index.php?page=mainpage.subpage
/mainpage/subpage.html?paramY=some.html -> /index.php?page=mainpage.subpage¶mY=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]