
Я хочу перенаправить весь трафик на example.com/*
перенаправлять наwww.example.com/*
я нашелКак перенаправить любой ServerAlias на соответствующий ServerName?который рассматривает рассматриваемую тему и сделал то, что было рекомендовано в ответе, получив четыре голоса «за»:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.example.com [nocase]
RewriteRule ^(.*)$ http://www.example.com$1 [last,redirect=301]
Однако это перенаправляет трафик, идущий http://example.com/subdirectory
на http://www.example.com
инетпо http://www.example.com/subdirectory
желанию.
Есть ли какие-нибудь лекарства по этому поводу?
решение1
Правильный способ сделать это — создать новый виртуальный хост и выполнить перенаправление в нем:
<VirtualHost *:80>
ServerName example.com
Redirect / http://www.example.com/
</VirtualHost>
<VirtualHost *:80>
ServerName www.example.com
DocumentRoot /var/www/something
</VirtualHost>