Что не так с этим переписывают правило?
RewriteRule ^api/(.+)$ api/index.php?url=$1 [L]
Я просто хочу "index.php? URL =", чтобы быть добавленным после API / и перед остальной частью получить параметров.
api/image/upload&arg1=1&text=lorem+ipsum
кому:
api/index.php?url=image/upload&arg1=1&text=lorem+ipsum
Что не так с (. +) для получения всего после API/?
Регулярное выражение в RewriteRule выполняется только для части пути URL-адреса, но не для параметров запроса. К счастью, есть флаг [QSA]
для сохранения существующих параметров запроса.
Я думаю, что вы должны написать ваше доменное имя перед регексом. Например, так:
RewriteRule ^(.+).com/api/(.*)$ "$1.com/api/index.php?url=$2" [R=301,L]
Вы что-то делаете, чтобы остановить бесконечную рекурсию?
RewriteRule ^api/(.+)$ api/index.php?url=$1 [R=301,L]
или что-то подобное