折腾了下,记录操作步骤:
1、由于套的CF的CDN,在SSL/TLS–客户端证书-创建证书-
下一步:
记录下证书及私钥:
分别保存为.pem及.key文件
2、同样在SSL/TLS的配置中,将加密方式配置为完全:
3、将.pem及.key文件上传到我们的VPS中,例如:/usr/local/nginx/conf/vhost/
4、修改nginx.conf文件内容:
在http区块中,增加:
ssl_certificate_key /usr/local/nginx/conf/vhost/**.net.key;
ssl_certificate /usr/local/nginx/conf/vhost/**.net.pem;
5、修改对应vhost下,对应网站的配置文件:
增加如下内容:
listen 443 default_server ssl;
SSL证书地址:
ssl_certificate_key /usr/local/nginx/conf/vhost/**.net.key;
ssl_certificate /usr/local/nginx/conf/vhost/**.net.pem;
301跳转:
if ($server_port = 80){return 301 https://$server_name$request_uri;}
记得:此处有坑,if后面有空格,并且“=”前后也需要有空格;该处301还可以写为:
if ($scheme = http){return 301 https://$server_name$request_uri;}
修改后记得重启nginx,或直接lnmp restart
6、修改wordpress数据库中的wp_options表中的值
7、修改wordpress根目录下文件wp-config.php,增加代码:
$_SERVER['HTTPS'] = 'on';
define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);
8、到此,在lnmp环境下,对wordpress程序进行http到https的301跳转整改完毕。