腾讯云配置 https
配置站点使用 https,并且将 http 重定向至 https。
nginx 的 ssl 模块是否安装
查看 nginx 是否安装 http_ssl_module 模块。
ruby
nginx -V如果出现 configure arguments: --with-http_ssl_module, 则已安装。没有的话自行搜索安装
ssl 证书部署
这里使用的是腾讯云的免费证书,期限为 1 年,这亚洲诚信机构颁发的免费证书只能一个域名使用,子域名那些需要另外申请。下载的是 一个 zip 文件,解压后打开里面的 Nginx 文件夹,把 1_XXX.com_bundle.crt 跟 2_XXX.com.key 文件复制下来。
在 nginx 目录新建 cert 文件夹存放证书文件。
bash
cd /etc/nginx
sudo mkdir cert将这两个文件上传至服务器的 cert 目录里。
$ scp /Users/yourname/Downloads/1_XXX.com_bundle.crt ubuntu@xxx.xx.xxx.xx:/etc/nginx/cert/
$ scp /Users/yourname/Downloads/2_XXX.com.key ubuntu@xxx.xx.xxx.xx:/etc/nginx/cert/scp [本地文件路径,可以直接拖文件至终端里面] [< 服务器登录名 >@< 服务器 IP 地址 >:< 服务器上的路径 >]
如果提示没有权限,修改权限即可
bash
ssh user@远程服务器公网ip
sudo su
chmod 777 /home
chmod 777 /home/informationnginx.conf 配置
编辑 /etc/nginx/conf.d 里面网站配置文件:
nginx
server {
listen 443;
server_name XXX.com;
root /root/www/xxxx;
# https配置
ssl_certificate /etc/nginx/cert/1_XXX.com_bundle.crt;
ssl_certificate_key /etc/nginx/cert/2_XXX.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;
location / {
root /root/www/xxxx;
index index.html;
}
location ~ ^/(images|javascript|js|css|flash|media|static)/ {
#过期30天,静态文件不怎么更新,过期可以设大一点,
#如果频繁更新,则可以设置得小一点。
expires 30d;
}
#禁止访问 .htxxx 文件
# location ~ /.ht {
# deny all;
#}
}
# 将 http 重定向 https
server {
listen 80;
server_name XXX.com www.XXX.com;
return 301 https://$server_name$request_uri;
}配置完测试一下
bash
sudo nginx -t提示成功后就可以重启 nginx 了
bash
# 停止nginx
sudo nginx -s stop
# 启动
sudo nginx或者
bash
sudo service nginx restart