跳到主要内容
版本:Next Version

安装SSL证书的网站如何实现HTTP重定向到HTTPS?

完成SSL证书部署后,需在服务器配置301强制重定向规则实现全站HTTPS加密访问。各服务器具体操作方法:

提示

配置后请清除浏览器缓存测试,推荐使用 锐成信息SSL检测工具 验证跳转状态

Nginx

如果您需要将 HTTP 请求自动重定向到 HTTPS,您可以通过以下操作设置:

  1. 使用Nginx重定向功能,在HTTP的 server 中增加 return 301 https://$host$request_uri; ,即可将 HTTP 请求重定向为 HTTPS。修改如下内容:

    server {
    listen 80;
    #把http的域名请求转成https
    return 301 https://$host$request_uri;
    }

  2. 重新启动 Nginx 服务器即可使用域名访问,实现 HTTP 自动跳转 HTTPS

提示

完整安装SSL证书流程清查看 Nginx服务器安装锐安信ssl证书教程


Tomcat

如果您需要将 HTTP 请求自动重定向到 HTTPS,您可以通过以下操作设置:

  1. 编辑 /usr/tomcat9.0.13/conf 目录下的 web.xml 文件,找到 </welcome-file-list> 标签。

  2. 请在结束标签 </welcome-file-list> 后面换行,并添加以下内容。

    <login-config>  
    <!-- Authorization setting for SSL -->
    <auth-method>CLIENT-CERT</auth-method>
    <realm-name>Client Cert Users-only Area</realm-name>
    </login-config>
    <security-constraint>
    <!-- Authorization setting for SSL -->
    <web-resource-collection >
    <web-resource-name >SSL</web-resource-name>
    <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
    <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
    </security-constraint>
  3. 编辑 /usr/tomcat9.0.13/conf 目录下的 server.xml 文件,将 redirectPort 参数修改为 SSL 的 connector 的端口,即443端口。如下所示:

    <Connector port="80" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="443" />
  4. 保存配置文件,在 bin 目录下执行以下命令,确认配置是否正确。

    ./configtest.sh
  5. 如果配置没有问题,重启Tomcat服务器即可使用域名访问,实现HTTP自动跳转HTTPS。

    ./shutdown.sh  #关闭 Tomcat 服务器
    ./startup.sh #启动 Tomcat 服务器
提示

完整安装SSL证书流程清查看 Tomcat服务器安装锐安信ssl证书教程


IIS

  1. 打开 IIS 服务管理器。

  2. 选择网站下的站点名称,双击打开“URL 重写”。如下图所示:

    注意

    执行该步骤前请先下载安装 URL Rewrite模块

    IIS

  3. 进入“URL 重写”页面,并单击右侧“操作”栏的 添加规则。如下图所示:

    IIS

  4. 在弹出的“添加规则”窗口中,选择 空白规则,单击 确定。如下图所示:

    IIS

  5. 进入“编辑入站规则”页面。如下图所示:

    IIS

    • 名称:填写 Http redirect to https。
    • 匹配URL:在“模式”中手动输入 (.*)
    • 条件:
      • 单击添加,弹出 “添加条件” 窗口。
      • 条件输入:{HTTPS}
      • 检查输入字符串是否:默认选择与模式匹配。
      • 模式:手动输入 ^OFF$
    • 操作:填写以下参数。
      • 操作类型:选择重定向。
      • 重定向 URL:https://{HTTP_HOST}/{R:1}
      • 重定向类型:301重定向。
  6. 单击右侧“操作”栏的 应用 保存。

  7. 返回网站首页,单击右侧“管理网站”栏的 重新启动。即可使用HTTPS进行访问。

提示

完整安装SSL证书流程清查看 IIS服务器安装锐安信ssl证书教程


Apache

如果您需要将 HTTP 请求自动重定向到 HTTPS,您可以通过以下操作设置:

  1. 编辑 /etc/httpd/conf 目录下的 httpd.conf 配置文件。检查该配置文件是否存在 LoadModule rewrite_module modules/mod_rewrite.so 。 如果存在,请去掉首行的注释符号(#),如果不存在,请添加该行 LoadModule rewrite_module modules/mod_rewrite.so ,然后保存配置文件。

  2. 打开http.conf文件,在配置文件中添加以下内容:

    <VirtualHost *:80>
    # 新增
    RewriteEngine on
    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule ^(.*)?$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
    </VirtualHost>
  3. 重新启动Apache服务器即可使用域名访问,实现HTTP自动跳转HTTPS。

提示

完整安装SSL证书流程清查看 Apache服务器安装锐安信ssl证书教程


Apache2

如果您需要将 HTTP 请求自动重定向到 HTTPS,您可以通过以下操作设置:

  1. 在命令行中输入 a2enmod rewrite 启用重定向模块

  2. 然后打开http配置文件,例如:/etc/apache2/sites-available/000-default.conf ,在配置文件中添加以下内容:

    <VirtualHost *:80>
    # 新增
    RewriteEngine on
    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule ^(.*)?$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
    </VirtualHost>
  3. 重新启动Apache服务器即可使用域名访问,实现HTTP自动跳转HTTPS。

提示

完整安装SSL证书流程清查看 Apache2服务器安装锐安信ssl证书教程