Как перенаправить ServerAlias ​​- запросы на ServerName и соблюдать подкаталоги в запросах?

Как перенаправить ServerAlias ​​- запросы на ServerName и соблюдать подкаталоги в запросах?

Я хочу перенаправить весь трафик на 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>

Связанный контент