Я попытался настроить файл htaccess, который просто перенаправляет все URL, которые не похожи друг на друга:
RewriteCond %{HTTP_HOST} !^www.example.com[NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
Но я узнал что-то странное, по какой-то причине это привело к бесконечной петле. Итак, я сделал несколько тестов.
Мое веб-пространство выглядит так:
-root
---folder 1
---folder 2
И у меня есть 2 домена, один нацелен на корневую папку, а другой на подпапку:
-root <--- http://another-url.com
--- folder 1
--- folder 2 <---- http://www.example.com
Я полагаю, что %{HTTP_HOST}
из моего файла htaccess распознает каждый URL как http://another-url.de, который отличается от моего www.example.com и поэтому перенаправляет на www.example.com, что приводит к бесконечному циклу.
Я сделал простую проверку: я создал файл PHP в моей папке 2, которая печатает $_SERVER[HTTP_HOST]
, Открыть файл через http://www.example.com и я получил вывод www.another-url.com.
Кто-нибудь знает, что происходит? И как я мог решить это ?!
Я знаю, что это старый вопрос, но сегодня у меня была такая же проблема в Google Chrome, в локальной среде, где размещено много поддельных доменов разработки. Вот что исправило это для меня:
Empty Cache and Hard Reload
После этого загружается правильный домен. Таким образом, в Chrome должна быть кэшированная запись DNS или что-то в этом роде.
Других решений пока нет …