Недавно я переместил простой сайт PHP на Elastic Beanstalk, но мне трудно перенаправить www.example.com
к example.com
. Это не https, большинство предложений, которые я нашел, связаны с.
Вот что у меня есть:
Маршрут53:
A example.com example.eu-west-1.elasticbeanstalk.com (Alias)
CNAME www.example.com example.eu-west-1.elasticbeanstalk.com
И в моем .htaccess
файл у меня следующий:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ %{ENV:PROTO}://%1%{REQUEST_URI} [R=301,L]
</IfModule>
При посещении example.com
все хорошо но в гостях www.example.com
дает мне цикл перенаправления:
http://www.example.com/var/www/html/://example.com/var/www/html/://example.com
Это лучший способ перенаправления на AWS?
РЕДАКТИРОВАТЬ
Я сейчас тоже пробовал
RewriteCond %{HTTP:X-Forwarded-Proto} !=https [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{SERVER_NAME} ^(www\.)?(.*)$ [NC]
RewriteRule ^/?(.*)$ http://%2/$1 [L,R=301]
и пока www.example.com
перенаправляет на example.com
, теперь у него есть цикл перенаправления (хотя и без пути к серверу в адресной строке).
Это не решение вашего .htaccess
проблема, но простое решение для перенаправления - это перенаправление с использованием корзины S3.
www.example.com
и настроить перенаправление веб-сайтов на example.com
www.example.com
в Route 53 как НИКНЕЙМЫ для этого ведра.Таким образом, когда ваш пользователь переходит на www.example,com
, они попадут в корзину, и это перенаправит их на example.com
, который затем перейдет на ваш сервер.