У меня сейчас есть modrewrite:
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /index.php/$1 [L]
Который добавляет исходный uri запроса в путь запроса index.php, если файл не существует. После некоторой манипуляции с $ _SERVER я могу получить запрос. Но для этого требуется много кода, поскольку $ _SERVER по-разному заполняется на разных серверах.
Я бы хотел вместо этого разделить URL-адрес следующим образом. Если у меня есть URL:
www.test.com/somedir/foo/bar?this=that
и файл htaccess находится в www.test.com/somedir/
, я хотел бы, чтобы результирующий URL был:
www.test.com/somedir/index.php?r=foo/bar&this=that
с другой стороны, если в конце исходного URL не было переменных get, например:
www.test.com/somedir/foo/bar
Я бы хотел получить это вместо:
www.test.com/somedir/index.php?r=foo/bar
Я пытался поиграть с этим, но просто не могу понять это. Любая помощь будет принята с благодарностью.