I hate to write this post but i've been working on this for far too long.
We are upgrading a multilingual site and the language module that we are now using handles URL's very differently. We are moving from domain.com/location-fr-fr/
to domain.com/fr_FR/location/
. I have been able successfully handle rewriting that by using the following RewriteRule (.*)-fr-fr fr_FR/$1/
. I cannot figure out the english one which looks like this. domain.com/location/
has to go to domain.com/en_US/location/
Where im running into the issue is I can't just rewrite everything, as I need to exclude any url beginning with /en_US or /fr_FR, but im failing with that.
I have tried this which i really think should work
RewriteRule ^(?!en_US/) http://www.google.com
I tried adding in a preceding slash but no good either
RewriteRule ^(?!/en_US/) http://www.google.com
https://htaccess.madewithlove.be/ agrees with me that it should work too but in practice it does not. I have been doing all my testing using wget so that browser caching is not an issue. Can someone give me a couple of pointers? I'm open to any suggestions on how to make this work better. It's a Silverstripe website in case that affects rewrites too.
Edit: After removing Silverstripe rewrite rules the rule works fine.