最近有个项目需求需要用到https
,所以就捣鼓了下,真的是一顿操作猛如虎,我配置的环境是centos 7.2
的服务器,证书是腾讯云
免费申请的!接下来就说说怎么脱坑吧-_-
https://blog.seosiwei.com/detail/4
整体流程:
【申请腾讯云证书】地址是(https://console.cloud.tencent.com/ssl)
【在服务器上安装nginx】此时安装好的nginx是未开启SSL模块
的,后面会安装,注意千万不要删除安装包
【上传对应的nginx证书到服务器】
【配置nginx.conf文件】
【关闭nginx】
【重启nginx】
【访问测试】具体操作:
1.安装证书
下载下来的证书目录是这样的2.安装nginx
//安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:
yum install gcc-c++
//PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库
yum install -y pcre pcre-devel
//zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库
yum install -y zlib zlib-devel
//OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
//nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库
yum install -y openssl openssl-devel
//使用wget命令下载nginx
wget -c https://nginx.org/download/nginx-1.10.1.tar.gz
//解压 配置
tar -zxvf nginx-1.10.1.tar.gz
cd nginx-1.10.1
./configure
//编译安装
make
make install
//启动、停止nginx
cd /usr/local/nginx/sbin/
./nginx
./nginx -s stop
./nginx -s quit
./nginx -s reload
//重启 nginx(推荐)
./nginx -s quit
./nginx
//开机自启动
vi /etc/rc.local
增加一行 /usr/local/nginx/sbin/nginx
设置执行权限:chmod 755 rc.local
到这里,nginx就安装完毕了
3.配置nginx.conf文件
server {
listen 80;
server_name xlwl.webjiacheng.com;
rewrite ^(.*)$ https://${server_name}$1 permanent;
}
server {
listen 443 ssl;
server_name xlwl.webjiacheng.com;
ssl_certificate 1_xlwl.webjiacheng.com_bundle.crt;#证书的路径根据自己的进行修改
ssl_certificate_key 2_xlwl.webjiacheng.com.key;#证书的路径根据自己的进行修改
ssl_session_timeout 5m;
ssl on;
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;
}
}
关闭nginx 重启nginx
./nginx -s quit #我就是没有关闭,一直热刷新,一直没起效果,蛋疼的不要不要的
./nginx
访问测试
就这么多了,如有不对,可以留言,谢谢大家!