nginx如何配置SSL证书实现https服务


本篇内容介绍了“nginx如何配置SSL证书实现https服务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!假如我现在node基本架构如下:index.html 文件代码如下:app.js 代码如下:package.json 代码如下;然后我在项目的根目录下执行 npm run dev 后,就可以在浏览器下访问 http://localhost:3001 了,但是为了我想使用域名访问的话,因此我们可以在 hosts文件下绑定下域名,比如叫 xxx.abc.com . hosts文件如下绑定:因此这个时候我们使用 http://xxx.abc.com:3001/ 就可以访问页面了,如下所示:如上所示,我们就可以访问页面了,但是我们有没有发现,在chrome浏览器下 显示http请求是不安全的,因此这个时候我想使用https来访问就好了,网页的安全性就得到了保障,但是这个时候如果我什么都不做,直接使用https去访问的话是不行的,比如地址:https://xxx.abc.com:3001. 如下图所示:
我们知道使用https访问的话,一般是需要安全证书的,因此我们现在的任务是需要使用nginx来配置下安全证书之类的事情,然后使用https能访问网页就能达到目标。
nginx配置https服务1. 首先进入nginx目录下,使用命令:cd /usr/local/etc/nginx。然后在该目录下创建 cert文件夹,目的是存放证书文件。
使用命令:mkdir cert 如下所示:2. 然后我们需要把证书相关的文件,比如server.crt 和 server.key 文件复制到该 cert目录下。比如如下证书文件:至于如上证书是如何生存的,可以请看我上篇文字移动命令:mv server.key /usr/local/etc/nginx/cert, 比如把server.key 和 server.crt文件都移动到 /usr/local/etc/nginx/cert目录下。如下图所示:然后我们再查看下 /usr/local/etc/nginx/cert 目录下,有如下文件,如下所示:3. nginx的配置nginx的配置需要加上如下代码:注意:如上 ssl on; 这个配置项需要去掉。假如是如上的配置后,我重新启动下nginx命令会报错,如下所示:ssl: error:06065064:digital envelope routines:evp_decryptfinal_ex:bad decrypt error:0906a065:pem routines:pem_do_header:bad decrypt 类似这样的错,然后通过百度搜索这个错误,通过如下方法可以解决:进入到该目录下:cd /usr/local/etc/nginx/cert 然后执行下面两句代码即可:如下所示:可以看百度搜索出来的页面然后当我继续重启下 nginx, 发现还会报错,报错信息如下:nginx: [warn] the “ssl” directive is deprecated, use the “listen … ssl” directive instead然后继续把 ssl on; 这句配置项去掉就可以了,可能和nginx的版本有关系最近升级到nginx 1.15,reload之后所有带 ssl的站点都报这个警告了,查了很多资料,最后在 github上面找到了一条相关的英文说明: ()本人英文不好,大概意思应该是说nginx 1.15及以后的版本,不需要再写ssl on;了。去 nginx.conf删掉 ssl on;之后,reload,果然没再报警,目前使用没啥问题。我确实理解错了,应该把 ssl on 改成 listen 443 ssl 这样才对。现在我继续重启下nginx就ok了,如下所示:但是如上配置后,我们还不能直接 使用 域名 https://xxx.abc.com/ 访问了,我们还需要在浏览器下把自己之前生成的client.crt 证书安装上去,在mac系统下操作步骤如下:1. 点击如下启动台。如下所示:2. 搜索钥匙串访问,点击进去,如下所示3. 进入到证书页面,把我们之前的client.crt证书拖进到证书里面去即可,比如我之前生成的 client.crt证书,如下所示:4. 右键点击我的证书,然后点击 “显示简介”, 进入到证书详情页面后。如下图所示:5. 进入页面后,使用证书时,选择始终信任后,如下图所示:6. 然后退出,可能需要输入电 香港云主机脑开机密码,输入完成,会自动保存。然后我们在浏览器访问该 https://xxx.abc.com/ 页面后就可以访问的到了。如下所示:
然后我们点击继续访问即可看到页面了,如下所示:如上就是使用 nginx + 证书 实现 本地node https服务了。但是如上https虽然可以访问,但是https前面还是显示不安全的文案; 如下图所示:“nginx如何配置SSL证书实现https服务”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注开发云网站,小编将为大家输出更多高质量的实用文章!

相关推荐: Html中javascript脚本怎么放

这篇“Html中javascript脚本怎么放”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Html中javascript脚本怎么放”文章吧。j…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 07/03 22:34
下一篇 07/03 22:34

相关推荐