wordpress配置HTTPS和遇到问题的解决方案

博主使用的是腾讯云服务器,所以索性就在腾讯云买了0元一年的DV SSL。

购买和配置HTTPS

1、飞机票(https://console.qcloud.com/ssl),然后点击申请证书 2、点击确定,博主这里选择的是免费,使用权1年的。 3、填写基本信息 域名备注名:随便填,自己知道就好 私钥密码:认真填写,防止以后要用到 4、验证域名所有权 博主这里选的是文件验证,相对麻烦点,新建文件夹和文件,将给的内容粘贴到文件中。 这里补充一下,如何新建.well-known文件夹,就是文件夹里名称第一个字符是点,如果你直接鼠标右键新建文件,或弹窗报错显示“必须键入文件名”。于是,我们可以选择在命令行下新建文件,
  1. mid .well-konwn
5、下载网站文件 点击下载到桌面,然后解压,里面应该有几个文件夹,即不同webserver对应的证书 博主用的Nginx,于是打开Nginx文件,可以看到如下两个文件,分别用记事本打开 6、上传代码 证书已经生成了,我们把里面的字符粘贴到指定位置,如果你有面板的话,操作方便一点,当然,不用面板的,也可以手动添加,这里不介绍了。速战速决,博主装的是宝塔的面板,后台直接可以添加 7、修改URL 然后在后台把两处url的协议改成https 如果进不了后台,可以在数据库里改,具体位置是wp_options表中 至此,我们已经配置成功了,如果你的网站是小黄锁,甚至无法打开,可以参考下面啦。如果还是不能解决,可以联系博主哦

问题解决

1、见得最多的就是 重定向循环,首页都无法打开,或者是后台进不去 这时,先检查一下两处url的协议是不是https的,然后再开启http到https的301跳转 这里贴一下APache的301跳转代码
  1. 将 http 访问强制重定向至 https,代码如下:
  2. RewriteEngine on
  3. RewriteBase /
  4. RewriteCond %{SERVER_PORT} !^443$
  5. RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
  6. 将 https 访问强制重定向至 http,代码如下:
  7. RewriteEngine on
  8. RewriteBase /
  9. RewriteCond %{SERVER_PORT} !^80$
  10. RewriteRule ^.*$ http://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]
Nginx 这里就不补充了,一般主机面板里都有手动设置的,很方便。 如果你还是不能成功,可以尝试使用这个插件 Easy HTTPS (SSL) Redirection 安装,启用后就生效,不会再重定向循环了。但是这个插件弊端太大,不建议长期使用 2、页面排版全乱了,这种情况很明显是css文件没有加载到,右键查看源代码,就能够排查了,很可能是两个url错了 3、依然是小黄锁,怎么没有可爱的小绿锁啊。F12快捷键,打开控制台,排查http的链接,主要是图片,把一些固定链接比如//liuyanzhao.com/wp-content/uploads/2017/1/logo.jpg协议改成https的,或者去掉前面的http:// 4、带评论的页面小黄锁,把gravatar头像获取 设置成从官方ssl获取 5、虾米播放器hermit无法使用,可以参考这篇文章 https://liuyanzhao.com/1239.html 6、图片无法显示,这个最好排查,直接查看图片地址,看路径,然后解决。 7、百度分享不支持https,可以参考这里解决 https://liuyanzhao.com/4144.html 8、未完待续   本文地址:https://liuyanzhao.com/1139.html 转载请注明

发表评论

目前评论:41

  • avatar 李野

    博主你好,我用新站测试https遇到了麻烦,来请教一下,我用的是阿里云的免费云主机,前几天也是根据另一个博主的方法配置https://www.juwends.com/maga/bigworld-maga/deploy_https_summary.html,结果前台都可以正常访问,就是后台输入账号密码后显示“抱歉,您不能访问此页面。”,好像大家很少碰到这样的问题吧,我的域名是www.cnvip8.com

    • avatar 言曌 作者

      一般不会遇到这个问题,推荐你使用宝塔面板,我可以帮你配置一下https。

    • avatar wordpress

      你解决这个问题了吗? 我也是 抱歉,您不能访问此页面。都好今天了 没解决。。。

  • avatar 博主

    不错,博主有两下子!我遇到的博主都写上了,现在有一个开启HTTPS访问后台无法进入,提示将您重定向的次数过多。 尝试清除 Cookie. 我用的是WDCP面板LINUX系统,面板后台有强制SSL按钮,网上说的强制后台SSL登录也开启了,PHPMyadmin数据库的两处域名也加上了HTTPS了,但是一开启就重定向无法进来了,不强制SSL的话HTTP还是能进后台的。 博主一定遇到过吧?分析一下?

    • avatar 言曌 作者

      应该还是301重定向的问题

      • avatar 博主

        关键是首页都可以进,如果不启用HTTPS,前后后台都没问题。 .htaccess为默认内容: # BEGIN WordPress RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress WDCP控制面板网站管理有个HTTPS控制开关,有关闭,启用,强制启用三个选项。 我的博客是:https://www.laoye.vc

        • avatar 言曌 作者

          你在.htaccess里再加一段 RewriteEngine on RewriteBase / RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301] 试试,或者强制启用 试试。或者使用Easy HTTPS (SSL) Redirection插件强制https(不推荐)当然你也可以试试宝塔面板。

          • avatar 访客

            这行,这样连首页都进不去了,固定循环。 我在WDCP面板后台修改HTTPS强制登录,然后查看nginx配置文件,它是通过: rewrite ^(.*)$ https://$host$1 permanent; 这行代码来控制一个网站的HTTPS启用情况的。 不知道这行代码有没有和 登录和后台强制开启SSL,通过修改wp-config.php文件这个冲突: define('FORCE_SSL_LOGIN', true); define('FORCE_SSL_ADMIN', true);

  • avatar 明月登楼

    http转https是个出力不讨好的事儿,我不建议这样! 新站倒是适合直接上SSL,但是SSL的用处真心没有宣传的那么神奇!

    • avatar 言曌 作者

      同意,谢谢明月

    • avatar yuru

      不弄SSL会不会对 SEO 有影响? 好像在哪看过这说法

  • avatar 电动石磨磨浆机

    谢谢博主分享~收藏 :smile:

  • avatar 热腾网

    博主用的百度主机啊。

    • avatar Yanzh 作者

      是的

  • avatar 老陈网志

    方法不错!

    • avatar Yanzh 作者

      多交流

  • avatar JC

    成功解决问题,之前自己捣鼓半天还没解决,感谢

    • avatar Yanzh 作者

      欢迎多来寒舍

  • avatar 中与雨

    我也用的百度云BCH,感觉配置HTTPS挺简单的

    • avatar Yanzh 作者

      是很简单啊,因为当时和bos纠缠在一起,遇到了麻烦。

  • avatar anonymous

    Hermit可以检查是否是JS导致的,Hermit的JS一般都是http的。

    • avatar Yanzh 作者

      嗯,跟那个百度分享一样的

  • avatar anonymous

    最后的解决方法很简单,直接写个php图片抓取程序,然后把用户发送的图片进行全局http化处理。。。

    • avatar Yanzh 作者

      看来有大神带我飞啦 :mrgreen: :mrgreen: :mrgreen: