获取SSL证书
阿里云和腾讯云每年有20个免费证书额度,不过每个证书只有一年有效期。
登录腾讯云控制台-SSL证书
域名验证方式选择 手动DNS验证
复制红框内容并添加到域名解析
解析后完成创建,大概1分钟证书就签发下来了。
点击右侧下载,选择Nginx
下载会得到一个带着域名的压缩文件,解压它
里面包含.csr .key .crt .pem四个后缀的文件
配置SSL证书
宝塔面板
以记事本方式打开.key.pem文件
登录宝塔面板->网站->你的域名
将两个文件里面的内容分别复制到密钥和证书处,保存。
Typecho
打开WinSCP或者其他FTP软件登录到服务器
将.crt .key证书上传到/usr/local/lighthouse/softwares/nginx/conf
编辑/usr/local/lighthouse/softwares/nginx/conf/include/typecho.conf
将前面的server {
替换成
server {
#禁止通过ip访问http
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 444;
}
server {
#禁止通过ip访问https
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
#ssl on;
ssl_certificate /1.crt;
ssl_certificate_key /1.key;
server_name _;
return 444;
}
server {
listen 80;
#填写绑定证书的域名
server_name klyang.com;
rewrite ^(.*) https://$server_name$1 permanent;
}
server {
listen 443 ssl;
#填写绑定证书的域名
server_name klyang.com;
#填写证书文件的路径
ssl_certificate /usr/local/lighthouse/softwares/nginx/conf/klyang.com_bundle.crt;
#填写私钥文件的路径
ssl_certificate_key /usr/local/lighthouse/softwares/nginx/conf/klyang.com.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
location / {
#网站主页路径。例如,你的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 /usr/local/lighthouse/softwares/typecho 为 /etc/www。
root /usr/local/lighthouse/softwares/typecho;
index index.php index.html;}
复制后记得将klyang.com
替换成你的域名!
保存后使用PuTTY工具登录服务器,输入以下命令
cd /usr/local/lighthouse/softwares/nginx/sbin
./nginx -s reload
再次使用域名访问时,http将自动跳转为https。