先简单介绍一下什么是Https,简单地说就是http的一个安全版本。HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。下面我们开始配置服务器。
一、确保具有ssl模块
首先查看是否有ssl的模块,如果没有我们进行安装
1、安装基础支持包
yum -y install openssl openssl-devel
2.备份原nginx.conf文件为nginx.conf.bak以防万一
3.安装ssl模块
cd /home/nginx-1.10.2
../configure --with-http_ssl_module
make
make install
二、申请证书
我们可以在阿里云或着腾讯云上申请一个SSl证书(他们两个有免费的),如果企业还是在权威机构购买特闷的证书。一般申请后过一段时间审批通过后你在他们网站上下载证书并放到你的服务器端。
三、配置服务器
接下来我们配置Nginx.conf,将下载的证书和Key的所在位置配置到配置文件上。具体配置如下
server {
listen 443;#监听443端口(https默认端口)
server_name www.xxx.com; #填写绑定证书的域名
ssl on;
ssl_certificate xxx.crt;#填写你的证书所在的位置
ssl_certificate_key xxx.key;#填写你的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 xxx ; #填写你的你的站点目录
index index.php index.html index.htm;
}
}
四、进行http80端口的访问重定向配置
server {
listen 80;
server_name www.xxx.com;#填写绑定证书的域名
rewrite ^ https://$http_host$request_uri? permanent; # 将http转到https
}
五、重启服务器
下面我们进行服务器的重启,在重启之前先检验配置文件是否有错误
nginx -t #如果没有错误进行服务器重启
service nginx restart
这样我们再也不会为访问网站提示不安全而困扰了。
网友评论