后台配置https分为以下几步:
-
生成ssl证书,
-
安装nginx,
-
配置nginx ssl认证和端口转发
分别介绍如下
ssl证书生成
证书生成有两种方式,自己生成或者第三方申请,快速部署使用阿里云免费ssl证书即可。具体申请流程参见:https://yq.aliyun.com/articles/637307。注意:需要提前准备好域名和ip信息。
申请成功后得到 后缀为crt
和key
的两个文件,将其放在服务器某个位置下并记录。
nignx安装
打开网站:http://nginx.org/en/download.html
根据操作系统下载对应nginx程序包,这里以windows版本下载为例
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pVLNMTCJ-1590414220054)(/Users/lf/Desktop/桌面 - 梁峰的MacBook Pro/my/后台配置https.assets/image-20200525205308478.png)]
下载完成后解压到硬盘某一位置,完成安装。
验证是否安装成功:
如果当前服务器80端口未被占用,在当前位置右键打开命令提示符,执行
start nginx
窗口打开后瞬间消失,访问 localhost 出现以下界面证明安装成功。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-m7pz2i0z-1590414220057)(/Users/lf/Desktop/桌面 - 梁峰的MacBook Pro/my/后台配置https.assets/image-20200525210423721.png)]
如果有程序占用80 端口,那么nginx启动会有问题,需要修改对应配置文件 您安装的路径\conf\nginx.conf
中的监听端口,以修改为81为例,如下:
......
server {
listen 81;
server_name localhost;
......
修改完成后重新启动,访问localhost:设置的端口
访问验证.
nginx 常用命令
nginx -v #查看版本
start nginx #启动nginx
nginx -s reload # 重载入配置
nginx -s stop #stop是快速停止nginx,可能并不保存相关信息;
nginx -s quit #quit是完整有序的停止nginx,并保存相关信息。
nginx -s reopen #打开日志文件
# windows 常用运维命令
tasklist /fi "imagename eq nginx.exe" #查看当前nginx进程
netstat -ano | findstr 80 #列出占用指定端口进程
tasklist | findstr 2000 # 根据进程号查进程名称
taskkill -PID <进程号> -F #强制关闭某个进程
https配置
修改nginx配置文件您安装的路径\conf\nginx.conf
,
http {
upstream your—app {
server 127.0.0.1:7001; # 需要监听的端口名 后台服务端口为7001
keepalive 64;
}
server {
listen 443 ssl;
server_name xxx.cloud; # 配置的https的域名
ssl_certificate C://nginx//ssl//shidian.crt; # 这个是证书的crt文件所在目录
ssl_certificate_key C://nginx//ssl//shidian.key; # 这个是证书key文件所在目录
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Connection "";
proxy_http_version 1.1;
proxy_pass http://your-app;
}
}
}
- 将 crt 和 key文件位置替换为实际位置
重启nginxs
nginx -s reload
配置host文件,此步非必须,只是为了在服务器测试是否配置成功
C:\Windows\System32\drivers\etc 路径下
127.0.0.1 xxxx.cloud #需要配置的域名
执行到这里,https配置完成