如何将 ServerAlias - 请求重定向到 ServerName 并遵循请求中的子目录?

如何将 ServerAlias - 请求重定向到 ServerName 并遵循请求中的子目录?

我希望所有流量重定向example.com/*www.example.com/*

我发现如何将任何 ServerAlias 重定向到相应的 ServerName?它处理了相关主题,并按照答案中的建议做了,获得了 4 个赞同:

RewriteEngine On
RewriteCond %{HTTP_HOST}  !^www.example.com [nocase]
RewriteRule ^(.*)$        http://www.example.com$1 [last,redirect=301]

然而,这个重定向流量http://example.com/subdirectoryhttp://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>

相关内容