免费申请网站永久域名的搜索结果(3)

弹性计算  ·  小程序  ·  网络协议  ·  数据建模  ·  Linux  ·  应用服务中间件  ·  网络安全  ·  nginx

2021-11-17

让网站永久拥有HTTPS-申请免费SSL证书并可以续期

一,环境说明 服务器系统:centos7 服务器IP地址:云服务器的公网IP 域名:bjubi.com 简单步骤流程: 拥有一台服务器(省略)》申请注册域名(省略)》申请免费ssl安全证书》Centos安装Nginx》Nginx配置ssl》网站https访问成功 二,域名解析到服务器 在阿里云控制台-产品与服务-云解析DNS-找到需要解析的域名点“解析”,进入解析页面后选择【添加解析】按钮会弹出如下页面: 主机记录这里选择@,记录值就是服务器ip地址,确认。 三,申请ca证书 在阿里云控制台-产品与服务-安全(云盾)-CA证书服务(数据安全),点击购买证书。(阿里云SSL免费证书申请地址) 选择“免费版DV SSL”,点击立即购买: 然后点去支付: 最后确认支付: 就会回到管理界面: 点击“补全”,输入要解析的域名,点下一步: 说明:因为我们这里申请的是开发版免费证书,所以一个证书仅支持一个域名认证,不支持通配符。 等待几分钟,证书状态变为“已签发”后,证书就申请成功了。 四,下载证书 列表中找到已签发的证书,下载: 进入下载页面,找到ngin页签中nginx配置信息,并“下载证书 for Nginx”: 记录以下内容,为了一会儿配置nginx用: 下载的文件有两个: 1,214292799730473.pem 2,214292799730473.key 五,服务器安装,配置nginx 这里安装 注意:这里安装Nginx的过程省略了,如果需要详细的安装Nginx教程,可以参考:Nginx系列教程(1)Nginx基本介绍和安装入门 登录到服务器: $ apt-get update // 更新软件 $ apt-get install nginx // 安装nginx 六,配置ca证书 1,nginx的安装目录为:/etc/nginx/。进入目录,增加cert/文件夹,把刚刚下载的两个文件上传到cert/文件夹中。 2,在/etc/nginx/sites-enabled/下,增加bjubi.com文件。内容如下: 说明:下面的配置是对443端口和80端口进行监听,443端口要启用ssl。监听443端口的server配置可以仿照上面ca认证页面的nginx配置示例进行配置。 root节点笔者创建了一个bjubi.com/的文件夹,专门存放来自这个域名的请求以示区分。 bjubi.com/文件夹下增加一个index.html文件,里面仅仅写了一行 welcome。 server { listen 443; server_name bjubi.com; // 你的域名 ssl on; root /var/www/bjubi.com; // 前台文件存放文件夹,可改成别的 index index.html index.htm;// 上面配置的文件夹里面的index.html ssl_certificate cert/214292799730473.pem;// 改成你的证书的名字 ssl_certificate_key cert/214292799730473.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 / { index index.html index.htm; } } server { listen 80; server_name bjubi.com;// 你的域名 rewrite ^(.*)$ https://bjubi.com:443/$1 permanent;// 把http的域名请求转成https } 配置完成后,检查一下nginx配置文件是否可用,有successful表示可用。 $ nginx -t // 检查nginx配置文件 配置正确后,重新加载配置文件使配置生效: nginx -s reload // 使配置生效 至此,nginx的https访问就完成了,并且通过rewrite方式把所有http请求也转成了https请求,更加安全。 如需重启nginx,用以下命令: $ service nginx stop // 停止 $ service nginx start // 启动 $ service nginx restart // 重启 七,访问效果 输入http:bjubi.com也会自动跳转至https页面。 说明:如果是云服务器比如阿里云ECS,需要到阿里云ECS的管理后台的安全组,修改端口过滤规则把80端口和443端口开放才能访问到。 缺少ssl_module模块 CentOS下配置Nginx的https时报错:缺少ngx_http_ssl_module 1.首先,找到Nginx安装包的位置。比如,我的是:/usr/local/sr c/nginx-1.15.1 cd /usr/local/src/nginx-1.15.1 如果忘记安装包放哪里了,可以find命令找一下。 如果还是找不到(比如删除了)。可以查看当前Nginx的版本号,重新下载一个。 【查看Nginx版本命令】 /usr/local/nginx/sbin/nginx -V  (/usr/local/nginx/是你Nginx服务器的实际位置) 2.生成新的Nginx配置。执行 /usr/local/nginx/sbin/nginx -V  查看configure arguments:后边有没有值,如果有,就复制下来。 然后执行  ./configure --原来有的模块(如果有的话) --with-http_ssl_module make 3.关闭现在运行的Nginx服务器。 /usr/local/nginx/sbin/nginx -s stop  由于我的配置文件报错,缺少 nginx: emerg the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:121 所以无法关闭。于是,我尝试把新的正确的nginx.conf替换出问题的nginx.conf。 再次执行关闭,成功。 4.OK,执行最后的步骤。把编译好的nginx覆盖掉原有的nginx。 cp ./objs/nginx /usr/local/nginx/sbin/ 系统会提示是否覆盖,输入y。 我运行时,系统提示Text file busy,执行失败。 没关系! ps -A 找到所有Nginx的进程。 Kill 1234 再次执行 cp ./objs/nginx /usr/local/nginx/sbin/ 没有报错。把正确的nginx.conf文件夹上传。 启动nginx。 ./nginx -c /usr/local/nginx/conf/nginx.conf 运行成功!! 往期文章 Nginx系列教程(1)nginx基本介绍和安装入门Nginx系列教程(2)nginx搭建静态资源web服务器Nginx系列教程(3)nginx缓存服务器上的静态文件Nginx系列教程(4)nginx处理web应用负载均衡问题以保证高并发Nginx系列教程(5)如何保障nginx的高可用性(keepalived)Nginx系列教程(6)nginx location 匹配规则详细解说Nginx系列教程(7)nginx rewrite配置规则详细说明

文章

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzzgdg.html