1.下载证书
以腾讯云免费的SSL 证书为例:
SSL证书-控制台(腾讯云)
准备工作:先申请,免费的时效为 有效期1年
切记 下载 自己网站搭建平台的 对应 版本(有Apache,Nginx,IIS等)
一般下载下来的压缩包解压后有四个文件
beiduoye.cn.csr
beiduoye.cn.key
beiduoye.cn_bundle.crt
beiduoye.cn_bundle.pem
2.上传证书
将需要用到的 beiduoye.cn.key
和 beiduoye.cn_bundle.crt
文件通过 Xshell
等 远程管理软件 上传到服务器主机空间
这里特别注意的是: 上传的目录位置
备注:腾讯 轻量应用服务器 的 目录在 /usr/local/lighthouse/softwares/nginx/conf/include
最新存放目录 /usr/local/lighthouse/softwares/nginx/conf
3.修改 配置信息
根据具体情况 修改 ***.conf
这个文件
在文件末尾 增加 如下
server {
listen 443 ssl;
server_tokens off;
keepalive_timeout 5;
root /usr/local/lighthouse/softwares/www.beiduoye.cn; #填写您的网站源码存放目录如:/usr/local/lighthouse/softwares/wordpress
index index.php index.html;
server_name www.beiduoye.cn; #填写您的证书绑定的域名
ssl_certificate beiduoye.cn_bundle.crt; #填写您的证书文件名称
ssl_certificate_key beiduoye.cn.key; #填写您的私钥文件名称
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # 可参考此 SSL 协议进行配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; #可按照此加密套件配置,写法遵循 openssl 标准
ssl_prefer_server_ciphers on;
location ~* \.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi.conf;
client_max_body_size 20m;
fastcgi_connect_timeout 30s;
fastcgi_send_timeout 30s;
fastcgi_read_timeout 30s;
fastcgi_intercept_errors on;
}
}
并在 第一个 server{listen 80 ....} 里 增加下面一行 代码用于 将网址强制转换为SSL的https
rewrite ^(.*)$ https://$host$1 permanent; #把http的域名请求转成https
4.最后重启服务器
推荐使用Xshell
远程管理软件
重启命令: systemctl restart nginx.service
至此 启用https://
就完成了 最后打开网站测试一下
整个配置文件 备份
server {
listen 80 default_server;
server_name www.beiduoye.cn;
root /usr/local/lighthouse/softwares/www.beiduoye.cn;
index index.php index.html index.htm index;
server_tokens on;
keepalive_timeout 5;
rewrite ^(.*)$ https://$host$1 permanent; #把http的域名请求转成https
#301重定向
#rewrite ^(.*)$ $1 permanent;
#强制SSL
#rewrite ^(.*)$ https://$host$1 permanent;
#防盗链
location ^~ /.vhost/ {
return 403;
}
location ^~ /.websitelog/ {
return 403;
}
location ~* (\.htaccess|\.git|\.svn|\.project|LICENSE|README.md|\.ini)$ {
return 403;
}
if ($host !~* "www.beiduoye.cn"){
return 410;
}
#用于匹配更多类型,例如二级目录下的网站
location / {
allow all;
}
location /.well-known/ {
allow all;
}
#处理PHP
location ~ [^/]\.php(/|$) {
root /usr/local/lighthouse/softwares/www.beiduoye.cn;
fastcgi_pass 127.0.0.1:9000;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
include fastcgi.conf;
}
#DenyFiles
location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
{
return 404;
}
}
server {
listen 443 ssl;
server_tokens off;
keepalive_timeout 5;
root /usr/local/lighthouse/softwares/www.beiduoye.cn; #填写您的网站根目录,例如:/usr/local/lighthouse/softwares/wordpress
index index.php index.html;
server_name www.beiduoye.cn; #填写您的证书绑定的域名,例如:www.cloud.tencent.com
ssl_certificate beiduoye.cn_bundle.crt; #填写您的证书文件名称,例如:1_cloud.tencent.com_bundle.crt
ssl_certificate_key beiduoye.cn.key; #填写您的私钥文件名称,例如:2_cloud.tencent.com.key
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # 可参考此 SSL 协议进行配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; #可按照此加密套件配置,写法遵循 openssl 标准
ssl_prefer_server_ciphers on;
location ~* \.php$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi.conf;
client_max_body_size 20m;
fastcgi_connect_timeout 30s;
fastcgi_send_timeout 30s;
fastcgi_read_timeout 30s;
fastcgi_intercept_errors on;
}
}
暂无评论