Переписать проблемы с правилами - PullRequest
1 голос
/ 13 апреля 2019

Я ненавижу писать этот пост, но я работаю над этим слишком долго.Мы обновляем многоязычный сайт, и языковой модуль, который мы сейчас используем, обрабатывает URL-адреса совсем по-другому.Мы переходим от domain.com/location-fr-fr/ к domain.com/fr_FR/location/.Я был в состоянии успешно обработать переписывание этого с помощью следующего RewriteRule (.*)-fr-fr fr_FR/$1/.Я не могу понять английский, который выглядит так.domain.com/location/ должен перейти на domain.com/en_US/location/

. Там, где я сталкиваюсь с проблемой, я не могу просто переписать все, так как мне нужно исключить любой URL, начинающийся с / en_US или / fr_FR, но я не могу сэто.

Я пробовал это, которое я действительно думаю, должно работать

RewriteRule ^(?!en_US/) http://www.google.com

Я попытался добавить в предыдущем слэше, но ничего хорошего

RewriteRule ^(?!/en_US/) http://www.google.com

https://htaccess.madewithlove.be/ согласен со мной, что это тоже должно работать, но на практике это не так.Я проводил все свои тесты с использованием wget, поэтому кэширование в браузере не является проблемой.Может кто-нибудь дать мне пару советов?Я открыт для любых предложений о том, как сделать эту работу лучше.Это веб-сайт Silverstripe в том случае, если это также влияет на перезапись.

Edit: После удаления правил перезаписи Silverstripe правило работает нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...