我如何使用htaccess来捕获像
这样的友好网址 /error/access/notallowed
并将其分解为
error.php?$1=$2
但真正的问题是,如果我有另一个网址
/something/name/joe/address/123_Maples_Lane/city/somewhere
如果所有奇数段都是偶数段的键值对,则动态地做同样的事情。
我需要PHP来分段进行分割还是htaccess可以动态创建查询?
答案 0 :(得分:2)
apache无法使用任意数量的参数创建重写,因为它必须处理PCRE表达式。你必须使用PHP来做到这一点。但是,apache仍然参与其中:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT]
这会将所有不存在的请求路由到index.php/
,请求将是路径。然后,您可以在index.php
上分解路径。