我有一个 apache web 服务器,它有大约 150 个 VirtualHosts,分布在 9 个 IP 地址上。我想将 http 连接重定向或重写为 https。我找到的解决方案在定义中有重写/重定向,但由于这个服务器有这么多,我希望除了添加 150 个重写之外,还有一种更优雅的方法来实现它。
顺便说一下,它是 ubuntu 22。
有任何想法吗?
答案1
您可以使用 %{http_host} 变量重定向到 https。只需绑定到端口 80 并将所有内容重定向到 https。无需知道主机名是什么。
未经测试,但应该可行:
<VirtualHost *:80>
<Location "/">
Redirect "https://%{HTTP_HOST}%{REQUEST_URI}"
</Location>
</VirtualHost>