如何创建传入请求包含URI的mod_rewrite规则

时间:2018-11-02 09:34:37

标签: apache mod-rewrite

我很少需要创建apache2重写规则,并且对使用以下语法的传入请求没有任何运气:

https://example.com/api/https%3A%2F%2Fexample.com%2Fthis.json%3Ftype%3Dmatch?q=house&colour=red

我想将其重写为:

https://example.com/index.php?q=house&colour=red&uri=https%3A%2F%2Fexampl.com%2Fthis.json

我尝试过的规则是

RewriteRule ^/api/([^/]*)$ /index.php?uri=$1 [QSA]

失败,并显示错误:“未找到:无法解析标识符:api%2Fhttps%3A(404)”

我注意到,如果在“ / api /”之后使用简单字符串而不是URI,则此方法有效。我在这里以及与Google一起查看了有关mod_rewrite的各种问题,但没有发现类似的问题。建议将不胜感激。

0 个答案:

没有答案