У меня возникла проблема с перенаправлением веб-сайта, и я обнаружил, что мой rewritecond input = 'www.example.com' и мой заголовок запроса host = 'example.com'. Поэтому я пытаюсь применить UseCanonimalName On в vhost, где мое ServerName определяется как «www.example.com», надеясь, что, когда оба совпадают, перенаправление моего веб-сайта произойдет, но, к сожалению, этого не происходит, и хост в моем заголовке запроса все еще остается 'пример .com '. Я имею в виду этот и этот сделать это.
Ниже мой httpd-vhost.conf:
<VirtualHost *:80>
ServerName www.example.com
ServerAlias example.com
UseCanonicalName On
DocumentRoot "d:/wamp64/www/example"
<Directory "d:/wamp64/www/example/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Order allow,deny
Allow from all
Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"
</Directory>
</VirtualHost>
Ниже хост, который у меня есть
Ниже приведены ожидания, которые я хотел бы получить:
Хост меняется с example.com на www.example.com, но, к сожалению, он работает только в Firefox, но не в других браузерах, которые IDK почему ?!
*** Я использую сервер Windows
Пожалуйста, поправьте меня, если я понимаю или делаю это неправильно. Спасибо всем!
В UseCanonicalName
не относится к перенаправлениям, а к самореферентный URL-адреса.
Off
: "формировать самореференциальные URL-адреса, используя имя хоста и порт, предоставленные клиентом"On
: "используйте имя хоста и порт, указанные в ServerName
директива к "Видимое перенаправление не связано с этим, но в результате политики HSTS вы указали с Strict-Transport-Security
. Браузер, который поддерживает HSTS и видел этот заголовок, выполнит внутреннее перенаправление на HTTPS независимо от вашего <VirtualHost *:80>
конфигурация.