首页 > 解决方案 > 将非 www 重定向到 https://www 不工作 apache2 配置

问题描述

有时当我在浏览器中编写 host.com 时,它会将我重定向到https://www.example.com ,但是在重新加载https://example.com时它不会重定向。

我尝试了很多方法,但没有一个对我有用。

我遵循的步骤是:

  1. 纳米 /etc/apache2/sites-available/example.com.conf
  2. 一次将其中一个添加到文件中,因此文件结构如下所示:

RewriteCond %{HTTPS} !on [OR]

RewriteCond %{HTTP_HOST} !^www.

重写规则 (.*) https://www.example.com% {REQUEST_URI} [L,R=301]

  1. 删除了旧站点启用/example.com.conf
  2. a2ensite example.com.conf
  3. 服务 apache2 重新加载

注意:我尝试了很多 RewriteCond 但第 2 步对我有用。但问题在于浏览https://example.com时出现一些浏览器安全警告提示,即使我对 example.com 和 www.example.com 都有 SSL 证书

也许是由于 SSL 证书安装或我不知道的原因。

标签: urlredirectapache2lets-encryptno-www

解决方案


在 .htaccess 文件中添加相同的行解决了我的问题:

RewriteCond %{HTTPS} !on [OR]

RewriteCond %{HTTP_HOST} !^www.

重写规则 (.*) https://www.example.com% {REQUEST_URI} [L,R=301]


推荐阅读