A client has an expressionengine site and wants the 'index.php' removed. Doing this alone will put a dent in his sites SEO ranking since it will change all URLs. So, we want to retain link equity and social network share counts by adding a 301 to all pages.
I know how to remove the index.php and I know how to redirect (I think), but when I use them both, the server throws a redirect loop. My logic is warped. What am I missing here?
Here is what I'm working with:
# Redirect attempt
Redirect 301 /index.php/feature/article/ http://domain.com/feature/article/
# EE index.php rewrite
RewriteCond $1 !^(index\.php|js|path\.php|press_releases|rear|robots\.txt|text\.html|themes) [NC]
RewriteRule ^(.*)$ /index.php/$1 [L]