背景说明
服务器为阿里云 ECS,操作系统为 CentOS 6.5。
部署配置说明
第一步,安装nginx
之所以要先安装
nginx
,是因为下面配置域名解析的时候可以直接在浏览器看到效果,当然了,先配置域名,然后ping
一下也是可以的
下载Nginx
源码包,解压源码包,进入解压后的目录,编译配置,命令如下:
./configure --prefix=/usr/local/nginx --with-http_ssl_module
以上命令将nginx
安装到usr/local/nginx
目录下,并启动ssl
功能。事先确保服务器已安装open-ssl
包,如没安装可用如下命令在线安装:
yum -y install openssl openssl-devel
,除此之外还需要PCRE、zlib。
然后执行make && make install
命令开始编译安装,直到提示安装成功即可。可到/usr/local/nginx/sbin
目录下输入./nginx
命令,即可以默认配置文件启动,如果需要指定配置文件,则用如下命令:
./nginx -t -c /usr/local/data/my-nginx.conf
,检查配置文件并指定一个配置文件。
安装过程中可能会提示缺少其它依赖包,根据提示安装即可。
如果不幸的是,之前已经安装了nginx
,但是没有编译ssl
模块,那可以根据这篇文章,重新将ssl
模块编译进去。
启动之后,如果不出意外,可以访问服务器,看到 nginx 默认页面。
第二步,申请及解析域名
为什么要申请域名,这就不多说了,网站想要外部访问,总得有个域名吧,难不成直接用
IP
访问吗。就算你非得用IP
访问,那对不起,下面配置HTTPS
证书的时候需要填写域名。
- 登录阿里云-万网,查询你要注册的域名,如果没有被注册的话, 可以直接购买,好的域名早就被域名倒手或者注册商自己抢注了,一般的域名,比如以公司名称、产品名称全拼、缩写的域名,一般是不会有人注册,这样的域名也相对便宜,基本一年不会过百的。
-
购买完域名后,需要完成一系列相关信息的填写,可按提示完成即可。然后进行域名解析
- 进入云解析,这里会看到所具有的万网域名,选中一个域名,点击下方的“添加解析”按钮。
- 跳转到解析设置页面,其中记录类型默认为 A 即可;
主机记录如果是二级域名,例如fengzheng.pub ,这里要填写
www
,如果是三级域名,例如api.fengzheng.pub,这里则要填api
;记录值即对应的服务器 IP,点击添加即可。一般是一分钟内生效。
通过刚刚配置好的解析,例如 www.fengzheng.pub 即可访问这个域名指向的服务器。第一步安装了 nginx ,那么现在访问这个域名,应该会出现 nginx 默认页面。如果提示 DNS 解析有问题,可能是本地或 DNS 服务商有缓存,清除缓存或等一段时间后再尝试。
第三步 申请 SSL 证书
进入阿里云控制台,“安全(云盾)”下的“证书服务”,点击购买证书,选择免费型 DV SSL,按提示走就可以,反正不用花钱的。
-
接下来到我的订单页面,看到证书状态是“待完成”,点击“补全”链接
接下来要求输入一个域名,因为免费证书只支持一个域名,这里可以写你申请的域名或者子域名也可以,例如a.com或者api.a.com。
之后填写个人信息,这里有个域名验证类型,分为DNS验证和文件验证,具体验证方式可查看 阿里云帮助手册。
-
最后到上传信息这一步,一般选择系统生成 CSR。
-
这里选择的是 DNS 验证方式,点击进度按钮,会弹出提示框,按提示框中的操作添加一条DNS记录。(文件验证方式会要求将一个html文件放到服务器指定的目录下,然后通过url访问到即可验证成功)
直到我的订单页面显示证书状态为已签发,即表示证书申请成功。
-
再之后会在我的订单列表中,操作栏看到下载按钮,点击按钮,跳转到证书下载页面,这里提供了nginx、Apache、Tomcat等证书下载
这里选择 nginx 证书。
第四步 在 nginx 中配置 HTTPS
将下载下来的证书解压,里面有两个文件一个是.key,另一个是.pem,把这两个文件传到服务器的一个目录中。
-
找到 nginx 配置文件,打开编辑,加入如下代码:
server {
listen 443 ssl;
server_name localhost;
ssl on; ssl_certificate /root/data/cert/test.pem;
ssl_certificate_key /root/data/test.key; ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on; location ^~/test {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto https;
proxy_pass http://127.0.0.1:8080/test;
} } 最后重启 nginx 即可。
欢迎关注,不定期更新本系列和其他文章 古时的风筝
,进入公众号可以加入交流群
阿里云LINUX服务器配置HTTPS(NGINX)的更多相关文章
-
阿里云Linux服务器购买、配置
购买.配置阿里云Linux服务器配置ftp发布网站全教程 http://blog.csdn.net/Jolesen/article/details/77505840
-
阿里云Linux服务器安装 nginx+mysql+php
阿里云Linux服务器安装 nginx+mysql+php步骤1.登录服务器2.下载安装包3.将安装包上传到服务器的/home目录下 注:使用rz sz命令进行本地和服务器间的上传.下载,安装命令yu ...
-
一个阿里云apache服务器配置两个或多个域名forLinux
一个阿里云apache服务器配置两个或多个域名for Linux: 默认已经配置好了阿里云提供的一键web安装,可以参考:http://www.42iot.com/?id=8 修改/alidata/s ...
-
阿里云Linux服务器初探
阿里云Linux服务器初探 阿里云Linux服务器初探 因为钱包的关系,本人买了一个660元2年的1核1GB的小服务器(centos是Linux的发行版),在当初是用2核4GB(内存)的时候使用的是w ...
-
阿里云Linux CentOS 7 Docker部署使用gogs搭建自己的git服务器
一.前言 Git是目前优秀和流行的源代码管理工具.而GitHub是一个面向开源及私有软件项目的托管云平台,但开源免费,私有收费.而公司出于商业化等目的需要搭建自己的源代码托管服务器.通过网上了解Gog ...
-
阿里云 Linux 启用465端口发送邮件
阿里云 Linux 启用465端口发送邮件 环境:阿里云 Linux Centos 7.4 x64 注:阿里云默认禁用25邮件端口,需要启动465端口加密进行邮件发送. 注:确保邮箱开启SMTP服务, ...
-
阿里云linux配置ftp服务
阿里云linux配置ftp服务 一.ftp服务安装 运行以下命令安装ftp yum install -y vsftpd 运行以下命令打开及查看etc/vsftpd cd /etc/vsftpd ls ...
-
配置阿里云SLB全站HTTPS集群
配置阿里云SLB全站HTTPS集群(以下内容仅为流程,信息可能有些对应不上) 1 登录阿里云购买两台实例 1.1 按量付费购买两台实例 1.2 配置网络可以不选择分配外网 1.3 自定义密码 1.4 ...
-
阿里云Linux安装软件镜像源
阿里云Linux安装软件镜像源 阿里云是最近新出的一个镜像源.得益与阿里云的高速发展,这么大的需求,肯定会推出自己的镜像源.阿里云Linux安装镜像源地址:http://mirrors.aliyun. ...
随机推荐
-
Python.Module.site
site " This module is automatically imported during initialization. The automatic import can be ...
-
Gson操作json
github:https://github.com/google/gson API:http://google.github.io/gson/apidocs/ 示例对象 package present ...
-
JS,数组小练习
var arr = [4, 0, 7, 9, 0, 0, 2, 6, 0, 3, 1, 0];要求将数组中的0项去掉,将不为0的值存入一个新的数组,生成新的数组 p.p1 { margin: 0.0p ...
-
ZeroBrane Lua脚本编辑器代码自动补全
简介 ZeroBrane Studio是一款支持代码提示.语法高亮.远程调试.代码分析.调试等功能的轻量级Lua IDE工具.可以去官网studio.zerobrane.com进行下载 ...
-
将svnkit转成dlls时的问题
未处理 System.TypeInitializationException Message="“org.tmatesoft.svn.core.internal.wc.DefaultSVNO ...
-
C#扩展(2):Random的扩展
在.net中关于Random一共也只有这几个方法 // // 摘要: // 表示伪随机数生成器,一种能够产生满足某些随机性统计要求的数字序列的设备. [ComVisible(true)] public ...
-
AVL树与红黑树(R-B树)的区别与联系
AVL树(http://baike.baidu.com/view/593144.htm?fr=aladdin),又称(严格)高度平衡的二叉搜索树.其他的平衡树还有:红黑树.Treap.伸展树.SBT. ...
-
Web Api通过文件流下载文件到本地实例
最近项目里面需要和C++的客户端互动,其中一个接口就是需要提供文件下载的接口,保证C++项目调用这个接口的时候能够正常下载文件到本地.参考了一下网上的代码,其原理就是读取服务器上指定路径的文件流,并将 ...
-
关于NOIP的运行环境
目前(2019年2月22日)仍然是 G++ , 终端运行,命令行: g++ test.cpp -o test ,而g++ 4.8.4默认标准是: -std=gnu++ . g++到了gcc6才把默认标 ...
-
OAF系统更新默认LOGO图标和主页环境描述
更新EBS OAF系统中默认的LOGO图标和主页的环境描述 左上角的ORACLE图片位置在 登录界面左上角oracle LOGO图片为GIF格式,大小155*20 背景透明.文件名为:FNDSSC ...