这时候会输出这些信息:
/usr/local/nginx/sbin/nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful kill -USR2 `cat /usr/local/nginx/logs/nginx.pid` sleep 1 test -f /usr/local/nginx/logs/nginx.pid.oldbin kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`没问题之后接下来,查看现在目前版本及安装模块:
/usr/local/nginx/sbin/nginx -V看到已经从 1.4.6 版本升级到了 1.10.1,而且这种升级不影响正常访问的。线上环境操作也是可以的。
Nginx 配置 HTTPS 服务编辑配置文件:
cd /usr/local/nginx/conf vim nginx.conf拉到最下面,会看到 HTTPS 配置被注释掉了。嗯,这是模板,我们就在这配置。
文字版:
server { listen 443 ssl; server_name ; ssl on; ssl_certificate 1_; ssl_certificate_key 2_; 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 html; index index.html index.htm; } }把上面的 ssl_certificate 和 ssl_certificate_key 替换成你下载下来的证书存放路径就行,记着下载下来的证书这种配置是放在 /usr/local/nginx/conf 目录下的,当然你也可以随意放。
这时候,你就可以打开浏览器访问一下试试了。正常情况 HTTPS 请求是打不开的,因为我们还没设置防火墙,记得要 开放 443 端口! ,嗯,设置过防火墙就可以正常访问了吧。
其实到这里,这个服务器支持 HTTPS 请求流程已经结束了,但是你发现好多人在浏览器地址栏输入域名的时候都不输入 或 https:// 的,因为浏览器会自动帮我们加上 的,所以,这时候输入我们刚刚设置的域名其实还是没有走 https:// 请求,那 怎么让就是输入 也走 HTTPS 呢?
很简单,Nginx 中这样配置就行啦!
server { listen 80; server_name ; rewrite ^(.*)$ https://$host$1 permanent; }我们利用 rewrite 来做跳转。监听到 80 端口的 HTTP 请求后,就转发到 HTTPS ,当然还有好多处理方式。
总结一下这篇文章讲了一下怎么申请免费的 HTTPS 证书,然后利用 Nginx 服务器来配置 HTTPS 请求访问,并其中顺手 平滑升级 Nginx ,如丝般顺滑的升级,不影响正常访问。HTTPS 方式的传输对我们网站来说应该是提高了一些安全性的,况且这种方式又很简单,可以试着搞一搞。
--------------------------------------分割线 --------------------------------------
CentOS 6.2实战部署Nginx+MySQL+PHP
搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程
CentOS 6.3下配置Nginx加载ngx_pagespeed模块
CentOS 6.4安装配置Nginx+Pcre+php-fpm
--------------------------------------分割线 --------------------------------------