1.首先要去服务器上面申请证书,申请证书步骤我就不多说了,必须有域名才能申请哦,我这里使用的是腾讯云服务器,下载证书
2.解压之后,找到nginx
3.进入nginx配置文件目录,我安装的nginx是/usr/local/nginx下,把刚刚的nginx证书放入
4.配置nginx.conf文件,我这里使用了重定向,配置简单的可以不使用
server {
listen 443;
server_name hotel.gzjojo.com; #填写绑定证书的域名
ssl on; #启用 SSL 功能
ssl_certificate /usr/local/nginx/conf/1_hotel.gzjojo.com_bundle.crt; #证书文件名称
ssl_certificate_key /usr/local/nginx/conf/2_hotel.gzjojo.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; #请按照这个套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_prefer_server_ciphers on;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_connect_timeout 20;
proxy_read_timeout 20;
proxy_send_timeout 20;
proxy_pass https://jojo_hotel_server;
}
location /hotel/img_server/ {
alias /data/yby-img-file/;#指定图片存放路径
}
location /hotel/html/ {
alias /root/yby-html-file/;#指定HTM存放路径
#nginx跨域请求配置
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If- Modified-Since,Cache-Control,Content-Type,Authorization';
if ($request_method = 'OPTIONS') {
return 204;
}
}
}
server{
listen 80;#监听18081端口,可以改成其他端口
server_name hotel.gzjojo.com;#当前服务的域名
rewrite ^(.*) https://$server_name$1 permanent;
}
5.配置成功之后测试nginx.conf是否成功 /usr/local/nginx/sbin/nginx -t
6.启动nginx就Ok了
如果 /usr/local/nginx/sbin/nginx -t这一步报错,说没有ssl
nginx: [emerg] unknown directive "ssl"
只有重新安装nginx,安装教程按这个来就不会错误了
教程:https://www.runoob.com/linux/nginx-install-setup.html