I\'m trying to internally redirect all requests to index.php and externally redirect all requests that contain index.php using a .htaccess file.
So URLs like http://
Among other things, if you want to do it without redirecting the browser then you don't want to use the [R]
option, which means R
edirect the browser.
Try this:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(index.php/)?.* index.php [L]
</IfModule>
You need to look at the URL in the request line to see if /index.php/…
has been requested:
RewriteCond %{THE_REQUEST} ^GET\ /index\.php/?([^ ]*)
RewriteRule ^index\.php/?(.*) /$1 [R,L]
RewriteCond $0 !^index\.php($|/)
RewriteRule .* index.php/$0 [L]