这可能以前在某个地方被问过。但是,在搜索了一段时间后,我无法弄清楚这一点。
我正在为我的 php 站点创建一个小型路由引擎。我希望能够使其尽可能动态和灵活。现在,我在内部将所有 URL 都转到我的路由器文件,它会解析正确页面的 URL。
我希望能够自动将所有 GET 参数转换为某种预定义的格式。我想知道这是否可能:
来自:example.com/page.php?param=val¶m=val...
至:
example.com/page/param/val/param/val...
关键是我不想硬编码匹配。理想情况下,我不需要知道有多少 GET 汽车或它们是什么,而是自动将任何汽车转换为上述预定义格式。然后将 URI 传递到我的路由器中,然后根据需要对其进行解析。此外,页面的路径可能是几个“子目录”,例如
example.com/account/register.php?action=something
example.com/account/register/action/something
TLDR
* mod_rewrite 能否自动将所有 GET 参数转换为一些预定义的格式,如 page/param/val/param/val 或 page/param:val/param:val?*
更新
为了澄清我的问题/我了解如何使用正则表达式以及不匹配 url 的内容。我的问题是我是否可以设置一些规则,将查询字符串转换为预定义格式,而无需事先知道有多少参数或它们用于哪个页面。