HTTP 无法跳转到 HTTPS 的问题

HTTP 无法跳转到 HTTPS 的问题


1、配置 HTTPS 证书

  • 本机实际ssl的路径,一些证书公钥、私钥都在此目录下。
c:\phpstudy_pro_Extensions\Apache2.4.39\conf\ssl目录下的文件
localhost.crt  #公钥或证书文件 存放cntworld.cn.crt内容
localhost.key  #私钥文件  存放cntworld.cn.key内容
localhostchain.crt  #证书链接文件,存放root_bundle.crt内容

2、确认 Apache 配置文件路径

c:\phpstudy_pro_Extensions\Apache2.4.39\conf目录下主要配置文件
httpd.conf
  • 打开httpd.conf文件,找到以下行,确保没有被注释。这两行确保Apache加载了SSL模块并监听443端口。
LoadModule ssl_module modules/mod_ssl.so
Listen 127.0.0.1:443
  • 打开httpd.conf文件,找到类似以下的行,确保没有被注释掉,这行指令会引入httpd-ssl.conf文件,后者包含了SSL证书相关配置。
Include conf/extra/httpd-ssl.conf
  • 编辑httpd-ssl.conf,打开 phpstudy\Apache2.4.39\conf\extra\httpd-ssl.conf 文件,配置 SSL 证书。确保有类似以下内容:这个配置确保 Apache 在 443 端口上监听 HTTPS 请求,并且正确加载了证书和私钥文件。
<VirtualHost _default_:443>
    DocumentRoot "C:/phpstudy_pro/WWW"
    ServerName localhost:443

    SSLEngine on
    SSLCertificateFile "c:/phpstudy_pro/Extensions/Apache2.4.39/conf/ssl/localhost.crt"
    SSLCertificateKeyFile "c:/phpstudy_pro/Extensions/Apache2.4.39/conf/ssl/localhost.key"
    SSLCertificateChainFile "C:/phpstudy/Apache2.4.39/conf/ssl/server.crt"
    
    <Directory "C:/phpstudy_pro/WWW">
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

  • 编辑 .htaccess 文件以实现 HTTP 到 HTTPS 的重定向,在你的网站根目录(例如 C:/phpstudy_pro/WWW)中,确保存在一个 .htaccess 文件。 如果没有,可以手动创建一个文件,文件内容如下
RewriteEngine On
RewriteCond %{HTTPS} off   #检查是否是HTTP请求
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]#如果是 HTTP 请求,则将其重定向到 HTTPS。

  • 重启Apache服务,如果没有生效,清除浏览器缓存,确保新的配置生效。
  • 注:以后要更换证书只需要将c:\phpstudy_pro_Extensions\Apache2.4.39\conf\ssl目录下的文件替换掉就可以了。能解决https带小锁的问题


转载请注明出处:  https://www.cntworld.cn
智能工控 » HTTP 无法跳转到 HTTPS 的问题

发表回复

提供最优质的资源集合

立即查看 了解详情
文章加载时间:0.0057 秒