ssl证书安装

5-03 938 views

一、证书申请

云服务器上的证书申请,如腾讯云,在云产品->域名管理->ssl证书管理-申请一个免费的证书。如图:

申请完之后,等审核完毕就会发通知到你邮箱和短信上,再登录腾讯把证书下载到本地,打开证书里面有apache、tomcat、nginx、iis等web服务器的证书,针对你在使用的web服务器使用相关证书,把证书上传到服务器上/www/server/nginx/conf ,修改相关配置文件即可。

附上腾讯云官方配置文档连接:https://cloud.tencent.com/document/product/400/4143

 

其他:由于我的网站由http升级到https,许多配置需要修改,这里记录下需要修改那些文件,下次要回退也是很方便的:

cat /www/server/panel/vhost/nginx/www.ycy114.com.conf

server{

listen 443;
server_name www.ycy114.com;
#下面一段是我自己配置的ssl
ssl on;
ssl_certificate 1_www.ycy114.com_bundle.crt; #证书位置
ssl_certificate_key 2_www.ycy114.com.key; #秘钥位置
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
ssl_prefer_server_ciphers on;

……

}

cat /www/server/nginx/conf/nginx.conf

server{

listen 80;
server_name www.ycy114.com;

…..

rewrite ^(.*) https://$host$1 permanent; #此配置作用是让http请求全部转到https上

…..

}

上面这两个配置文件我都有做备份,还原的话,直接替换即可

/usr/bin/nginx -t #检查下nginx配置是否正确

/etc/init.d/nginx restart #重启nginx

这些配置完了还有些问题,如:图片,css等wordpress自带的url还是http的路径,这些没改过来的话,通过https是访问不了的,下面做wordpress的配置修改

路径:网站根目录\wp-includes\functions.php
找到代码 require( ABSPATH . WPINC . ‘/option.php’ );
在下方添加:

add_filter(‘script_loader_src’, ‘agnostic_script_loader_src’, 20,2); function agnostic_script_loader_src($src, $handle) { return preg_replace(‘/^(http|https):/’, ”, $src); } add_filter(‘style_loader_src’, ‘agnostic_style_loader_src’, 20,2); function agnostic_style_loader_src($src, $handle) { return preg_replace(‘/^(http|https):/’, ”, $src); }

后台文件修改

路径:网站根目录\wp-config.php
找到代码:

*
* @package WordPress
*/

在下方添加如下代码:

$_SERVER[‘HTTPS’] = ‘on’;
define(‘FORCE_SSL_LOGIN’, true);
define(‘FORCE_SSL_ADMIN’, true);

安装插件

完成以上两步操作后,可以正常访问https开头的网站和后台,
下载这个叫“really-simple-ssl”的WordPress插件:

登录后台安装此插件。

至此,真正意义上解决wordpress全站开启https的ssl证书问题。

 

遗留问题:此次操作升级https导致注册用户时收不到邮件!之前是可以的

下面是解决办法(网上有很多解决办法,个人认为最好不要用插件的方法,这样会导致网站访问速度变慢)

就是修改如下 1个文件:

将 /wp-includes/pluggable.php 这个文件的

先备份 cp pluggable.php pluggable.php_backup

找到
$phpmailer->IsMail();
修改为
$phpmailer->IsSMTP();
就是说不使用 Mail 函数,部分机器不支持mail函数,换为 SMTP 方式。

找到do_action_ref_array( ‘phpmailer_init’, array( &$phpmailer ) );

在它下面添加如下代码:
$phpmailer->Host = ‘SMTP.163.com’;  //邮箱伺服
$phpmailer->Username = ‘******@163.com’;  //邮箱地址
$phpmailer->Password = ‘******’;    //密码
$phpmailer->From = ‘******@163.com’; //邮箱地址
$phpmailer->SMTPAuth = true; //开启
$phpmailer->SMTPSecure = ”; //tls or ssl(port=25留空,465为ssl)

 

部分参考网址:https://www.dadiaoge.com/wordpress-https.html

 

为Kubernetes v1.5.2版本安装dashboard图形界面

一、前言 dashboard是一个图形化管理界面,由于我这边的Kubernetes v1.5.2比较老,按官网的安装方法没有效果,现在试试手动安装,使用下面2个yaml文件安装 ...

阅读全文

k8s简单部署

K8s中文手册地址:https://www.kuboard.cn/learning/k8s-basics/kubernetes-basics.html#kubernetes%E5%8A%9F%E8%83%BD   这边安装的Kubernetes v1.5.2 比较...

阅读全文

centos7上openvpn搭建详细教程

写在前面的前言: 因为工作需要安全连接公司的内网机器。对比了几个vpn的配置及工作模式。安全性:openvpn>l2tp/ipsec>pptp ,当然还有ss+代理的模式。...

阅读全文

欢迎留言