利用nginx + node在阿里云部署https的步骤详解


Posted in Javascript onDecember 19, 2017

缘起

最近在写node+mongodb版本的灵犀微商城,所以免不了要自己去部署自己的https证书到阿里服务器,下面将实现的过程完整的给大家总结下,话不多说了,来一起看看详细的介绍吧。

 HTTPS和HTTP的区别主要如下:

      1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。

      2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。

      3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

      4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

申请

等了2天才拿到免费的https证书,在阿里一直是显示售罄,难道最近https普遍起来导致供不应求了。

利用nginx + node在阿里云部署https的步骤详解

利用nginx + node在阿里云部署https的步骤详解

利用nginx + node在阿里云部署https的步骤详解

利用nginx + node在阿里云部署https的步骤详解

部署

利用nginx + node在阿里云部署https的步骤详解

上传了fileauth.txt到指定的目录下,几分钟后,就审核通过了,期间并没有审核电话打进来。操作部署阿里给出很详尽,复制过来就可以,不过要注意要将cert文件夹放在conf下,而不是说明上所说的nginx根目录。当你按阿里原原本本地操作,将看到这个报错,fopen:No such file or directory:fopen('/usr/local/nginx/conf/cert/214389510580391.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file) ,也就明白是cert存在目录的问题。

node反向代理

location / {
   proxy_pass http://127.0.0.1:4001;
   proxy_set_header Host $host;
   proxy_set_header X-Real-IP $remote_addr;
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }

node还是照旧跑,不关心https还是http,它由nginx完成。第1个proxy_pass是反向代理,后面3个proxy_set_header是将请求完全由mall.it577.net接管,不加上虽然能被前端请求,但是req.originUrl仍然还是会解析为http://127.0.0.1:4001,这就影响到了微信支付回调notify_url的解耦了,于是加上这3行。

结果

利用nginx + node在阿里云部署https的步骤详解

从地址栏看到已经支持https了。

以上的过程是很简单,基本都能配置上,说下我遇到的坑。因为我阿里预装nginx并不带https模块,所以要自己手动下载安装包再重新编译,最后复制新编译出来的nginx执行文件替换并重启服务。

报错,提示找不到ssl模块

nginx: [emerg] unknown directive "ssl" in /usr/local/nginx/conf/nginx.conf:123

下载相应版本的ngix压缩包

wget http://nginx.org/download/nginx-1.12.1.tar.gz

解压

tar zxvf nginx-1.12.1.tar.gz

带参编译得到ssl模块

./configure --with-http_ssl_module

make

停止nginx

/usr/local/nginx/sbin/nginx -s stop

当然可以kill进程,网上搜到的是让kill的3种方法

替换旧nginx

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
cp ./objs/nginx /usr/local/nginx/sbin/

重启nginx并重新加载conf配置文件

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
/usr/local/nginx/sbin/nginx -s reload

上述踩坑参考了文章https://3water.com/article/130894.htm,感谢前人栽树。

这时再在浏览器访问就看到上面给出的截图效果了,大功告成。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
javascript 火狐(firefox)不显示本地图片问题解决
Jul 05 Javascript
浅谈JavaScript 的执行顺序
Aug 07 Javascript
搞定immutable.js详细说明
May 02 Javascript
javascript解析ajax返回的xml和json格式数据实例详解
Jan 05 Javascript
浅谈Node Inspector 代理实现
Oct 19 Javascript
JavaScript 跨域之POST实现方法
May 07 Javascript
浅入深出Vue之自动化路由
Aug 06 Javascript
vue 实现路由跳转时更改页面title
Nov 05 Javascript
Vue页面切换和a链接的本质区别详解
Nov 12 Javascript
Element实现表格嵌套、多个表格共用一个表头的方法
May 09 Javascript
JS实现简单移动端鼠标拖拽
Jul 23 Javascript
基于JavaScript实现猜数字游戏代码实例
Jul 30 Javascript
使用Vue自定义数字键盘组件(体验度极好)
Dec 19 #Javascript
vue 通过下拉框组件学习vue中的父子通讯
Dec 19 #Javascript
浅谈Vue.js中ref ($refs)用法举例总结
Dec 19 #Javascript
Vue 2.0学习笔记之使用$refs访问Vue中的DOM
Dec 19 #Javascript
jQuery实现弹窗下底部页面禁止滑动效果
Dec 19 #jQuery
基于node.js实现微信支付退款功能
Dec 19 #Javascript
React Native之prop-types进行属性确认详解
Dec 19 #Javascript
You might like
php magic_quotes_gpc的一点认识与分析
2008/08/18 PHP
PHP实现图片裁剪、添加水印效果代码
2014/10/01 PHP
PHP整合七牛实现上传文件
2015/07/03 PHP
Twig模板引擎用法入门教程
2016/01/20 PHP
ThinkPhP+Apache+PHPstorm整合框架流程图解
2020/11/23 PHP
JavaScript中两种链式调用实现代码
2011/01/12 Javascript
判断是否安装flash player及当前版本的JS代码
2013/08/08 Javascript
javascript中负数算术右移、逻辑右移的奥秘探索
2013/10/17 Javascript
js点击出现悬浮窗效果不使用JQuery插件
2014/01/20 Javascript
jquery仿百度经验滑动切换浏览效果
2015/04/14 Javascript
Js与Jq 获取页面元素值的方法和差异对比
2015/04/30 Javascript
Javascript连接Access数据库完整实例
2015/08/03 Javascript
jQuery实现带玻璃流光质感的手风琴特效
2015/11/20 Javascript
jQuery在ie6下无法设置select选中的解决方法详解
2016/09/20 Javascript
JS+HTML5实现的前端购物车功能插件实例【附demo源码下载】
2016/10/17 Javascript
微信小程序 教程之注册程序
2016/10/17 Javascript
用原生JS实现简单的多选框功能
2017/06/12 Javascript
javascript input输入框模糊提示功能的实现
2017/09/25 Javascript
AngularJS与后端php的数据交互方法
2018/08/13 Javascript
VUE 实现滚动监听 导航栏置顶的方法
2018/09/11 Javascript
在react中使用vue的状态管理的方法示例
2020/05/02 Javascript
vue-router懒加载的3种方式汇总
2021/02/28 Vue.js
PyQt4实现下拉菜单可供选择并打印出来
2018/04/20 Python
Python 单元测试(unittest)的使用小结
2018/11/14 Python
python学生管理系统
2019/01/30 Python
PyTorch和Keras计算模型参数的例子
2020/01/02 Python
澳大利亚在线购买葡萄酒:The Wine Collective
2020/02/20 全球购物
机电专业个人求职信范文
2013/12/30 职场文书
毕业生的自我评价范文
2013/12/31 职场文书
副董事长岗位职责
2014/04/02 职场文书
员工安全责任书范本
2014/07/24 职场文书
酒店管理专业毕业生自我鉴定
2014/09/29 职场文书
2014年药房工作总结
2014/11/22 职场文书
工作态度怎么写
2015/06/25 职场文书
2019年让高校“心动”的自荐信
2019/03/25 职场文书
十大最强格斗系宝可梦,超梦X仅排第十,第二最重格斗礼仪
2022/03/18 日漫