У меня есть приложение Silex и я получаю запросы как это: https://.../dev/foo/bar и хотите переписать их https://.../index.php/foo/barИгнорировать определенную часть URL с помощью mod_rewrite
... «Тогда как» может быть что угодно, от «WWW. asd.com "в" localhost/~ asd/folder ".
Мой .htaccess файл находится на веб-корень, https://.../
Это нормальный mod_rewrite установки я использую:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule^index.php [QSA,L]
Моя наивная попытка путем установки RewriteBase не удалось:
RewriteEngine On
RewriteBase /dev
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule^index.php [QSA,L]
Там я получаю ошибку
Forbidden
You don't have permission to access /dev/index.php on this server.
Кроме того, только перезапись не удалось:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^dev/(.*) index.php [L]
Как ни странно, это не просто пропустить Dev часть, но он пытается получить доступ к/DEV/Foo/бар вместо желаемого/Foo/бар.
Любой ключ?
Где находится ваш .htaccess? – anubhava
Привет, я добавил его к вопросу. – Philip
Возможно, измените его на 'RewriteRule^dev /(.+)/? index.php? url = $ 1 [QSA, L] 'и использовать' $ _GET ['url'] 'для доступа к запрошенному пути. –