日志标签:https

博客开启强制HTTPS访问

分类:折腾日期:2017-02-16 - 23:04:41评论:11条作者:老谢

  自为博客安装SSL证书以后,老谢博客一直是支持HTTPS协议访问的,但是并没有强制跳转HTTPS,最近Let’s Encrypt的免费SSL证书流行开来,老薛主机的cPanel控制面板也已经支持了一键安装SSL证书启用HTTPS访问,身边的朋友也越来也多使用HTTPS访问,老谢也按耐不住启用强制HTTPS访问。

# 又拍云启用HTTPS

  老谢博客使用又拍云作为外链资源好几年了,要启用全站HTTPS,外链资源必须也要使用HTTPS协议,登录又拍云的后台,在“工具箱” – “SSL证书服务”里面可以自定申请Let’s Encrypt的免费SSL证书,该证书是受Chrome和Firefox等主流浏览器信任的,免费3个月,又拍云支持自动续期的功能。

  申请证书速度很快,我在操作的时候只用了十来分钟就完成了,另外要注意的是需要在又拍云的HTTPS设置里面选择启用HTTPS访问以及强制SSL的选项。

# 修改站点地址、资源地址以及修改文章内链接

  首先在wp后台的设置里面,修改站点地址为HTTPS的地址,然后把站内的静态资源如CSS、JS以及小图标等链接修改为HTTPS,确保无非HTTPS的资源载入。

  最后修改站内的图片资源地址,老谢博客一直使用又拍云的外链资源,地址为https://www.xj123.info/wp-content/uploads/,这里只需要修改为https://www.xj123.info/wp-content/uploads/即可,可以使用SQL语句完成:

UPDATE wp_posts SET post_content = REPLACE( post_content, 'http://www.old.com', 'http://www.new.com' ) ;

  最最后也可以在wp-config.php添加下面参数启用wp后台强制HTTPS访问:

/* 强制后台和登录使用 SSL */
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);
# Nginx重定向到https

  在server字段添加下面的语句即可:

                if ( $scheme = http ){
                    return 301 https://$server_name$request_uri;
                }

http重定向到https

分类:网站技术日期:2012-03-09 - 22:15:20评论:12条作者:老谢

老谢目前做了一个新站,全站采用https协议访问,所以需要http重定向到https,只需要在.htaccess加入下面规则既可:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L]

代码来自:301 redirect from http to https (6 posts)

Tags: , , ,