您的位置:首页 > 理论基础 > 计算机网络

记录一次阿里云部署https的大致经过

2017-02-06 00:14 309 查看
通过阿里云ECS简单部署了一个node的https项目,其中遇到不少坑,这里大致记录一下。由于工作比较忙,所以没有时间写完整的教程,就把大致流程、参考教程和其中遇到的坑记录下来,希望对大家有所帮助。

一、准备阶段

1.一个阿里云ECS服务器

阿里云ECS服务器申请地址 https://www.aliyun.com/product/ecs?spm=5176.8142029.388261.245.22449968oKse9d
2.一个备过案的域名

域名备案大约需要二十多天,因为做微信的一些东西都需要备案域名,建议大家有时间还是去备案一下,当然有些也可以使用内网穿透工具去做,我用的花生壳,这家还是比较稳定,不要用国外的那个不稳定的,这个花生壳也总共花了不超过10块钱。关于域名备案可以参考这个链接https://help.aliyun.com/knowledge_detail/36922.html

3.一套可以部署的node项目或是其他语言的项目

二、开始部署

1.首先下载xftp和xshell,利用这两个工具登陆阿里云ECS

xshell和xftp的安装和使用教程 http://blog.csdn.net/highprox/article/details/51283990
2.在linux上部署node项目

部署node项目可以参考:https://help.aliyun.com/document_detail/50775.html?spm=5176.doc52806.6.761.102jJbl

此处有一个坑,就是部署好了的项目用浏览器访问不到,是因为ECS有一个安全组规则,需要把端口配置到规则中才可以访问。 https://help.aliyun.com/document_detail/25471.htmlspm=5176.11065259.1996646101.searchclickresult.1504d2d8STUuQy 通过上面的两个教程保证项目可以通过浏览器访问到
3.阿里云部署nginx
我下载的https证书是基于nginx,所以需要在服务器安装一下nginx https://www.cnblogs.com/piscesLoveCc/p/5794926.html
此处也有一个坑,就是后面启用https的时候,nginx启动不了,报找不到ssl,原因是就是nginx没有加载ssl模块,具体解决办法就是在执行上面教程这个命令行./configure
--prefix=/usr/local/nginx 的时候需要执行./configure--prefix=/usr/local/nginx--with-http_stub_status_module--with-http_ssl_module--with-file-aio--with-http_realip_module
通过这步操作可以通过浏览器访问到nginx的欢迎页面
4.域名解析
部署好nginx后,可以在阿里云DNS里设置域名解析,在浏览器中可以通过域名访问到你的nginx欢迎界面 https://help.aliyun.com/document_detail/29716.html
5.申请免费ssl证书
可以通过这个教程http://blog.csdn.net/virusfu/article/details/54926360了解下如何申请
更新下教程,这个地方又来坑了,就是小伙伴们找不到免费的申请地址,其实是有的,只是被隐藏起来了。必须在保护类型中先选一个域名,然后在品牌中选择Symantec,才能出现免费证书的选项。当然人家也是为了挣钱,只要能找到就好了。
通过上面的教程申请证书,只要之前的网站能正常访问,一般十分钟就能申请成功。
6.下载证书配置证书
点击下载nginx证书,后面会跟着如何配置,也可以参考一下这个视频 https://help.aliyun.com/video_detail/54216.html?spm=5176.product28533.3.3.P7OYhR
对的你想的没错,又来坑了,修改好nginx一定要重启nginx,记住是重启!重启!不是nginx -s reload
重启完nginx后你就可以愉快的通过https的域名去访问页面了,当然现在现实的是nginx的欢迎页面,而不是你的项目
7.nginx部署项目
用nginx做反向代理配置项目,实际就是改一下nginx.conf配置文件,然后重新加载一下nginx就好了。 https://www.cnblogs.com/nihaofenghao/p/6920967.html
一定要保证所有的端口都配置在了阿里云ECS的安全策略里
通过上面的步骤你就可以完成自己https项目的部署。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: