Nginx 安装 SSL 证书以通过 Https
1 访问 WordPress 博客。 Nginx下配置SSL
首先你需要一个独立的IP和SSL证书。下面博主就给你一个申请地址。您可以自行申请,https://buy.wosign.com/free/?(这是Wosign免费的3年SSL证书)
证书颁发后,检索证书,解压nginx压缩包,然后获取 xxx.key 和 xxx.crt。第一个是密钥,第二个是证书。然后将以下代码添加到nginx配置文件中。
- #------SSL开始
- 听443;
- SSL 开启;
- SSL_Certificate /usr/local/nginx/conf/ssl/xxx.crt;
- ssl_certificate_key/usr/local/nginx/conf/ssl/xxx.key;
- #-----SSL END
2.替换站点上的非Https资源。
按照上面的方法更改配置文件后,我们可以通过https访问网站看看效果。
虽然可以访问,但是没有显示绿色的锁,但是有一个三角标志,这很可能意味着网站加载了非https资源。 SSL协议下的所有资源都必须是加密链接,所以下一步就是。要将所有http源加载到https编码的链接中,首先进入WP后端→设置→常规→WordPress地址和站点地址为https。完成本节后,仍然有许多未加密的链接。这里可以运行sql命令,快速将站点上的http链接替换为https链接。如果你不明白,你可以使用 Velvet Blues Update URLs 插件来快速替换它们。替换完成后,即可卸载插件。使用方法如下图所示。
![]()
在第一个框中输入http://xxx.com,然后在第二个框中输入https://xxx.com,并具体输入您的域名。
3。替换 Gravatar 头像来源
说到 http 附加组件,gravatar 头像也很重要。博主这里提供了一个头像缓存服务器,可以通过加密链接访问。只需将以下代码添加到主题functions.php即可。
| 123456 | //头像sslfunction get_ssl_avatar($avatar) {$avatar = preg_replace('/.*\/avatar\/(.*)\?s=([\d]+)&.*/','',$avatar);return $avatar;}add_filter('get_avatar', 'get_ssl_avatar'); |
4.使用301强制https访问
通过nginxRewrite规则可以轻松控制所有http访问https,即无论打开哪个页面都会跳转到https页面。实现方法是下面的代码。只需将这些添加到 nginx 重写规则中即可。
| 123456789101112 | if ($server_port !~ "^443$"){set $rule_0 1$rule_0;}if ($http_user_agent !~* "MSIE/[1-8]."){set $rule_0 2$rule_0; }if ($http_host ~ "xxx.com"){设置$rule_0 3$rule_0;}if ($rule_0 = "321"){重写^/.*$ https://xxx.com$uri permanent;} |
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
code前端网