由于项目改成了https访问,所以本地开发的时候也要通过https验证,避免页面发送http请求。

例如原来是这样访问:http://192.168.88.88:8080/ 或 http://localhost:8080/,现在要这样访问:http://hellotom.pcauto.com.cn/

一、下载openssl 

  1.下载

  openssl官网下载列表:https://slproweb.com/products/Win32OpenSSL.html

  找到windows64位的openssl,并下载

  2.安装

    安装过程中,如果提示缺少库,需要下载并先安装好

  选择放到openssl的bin目录下,方便查找

  如果有的话就给,没有就把勾勾去掉。

  安装完openssl了,到bin目录下看一下

 

二、openssl生成证书、密钥

  1.双击openssl.exe,进入cmd。

  2.生成私钥,注意,1024的长度不安全,所以要换成2048

genrsa -out server.key 2048

  3.生成证书签名请求

req -new -key server.key -out server.csr

  4.生成证书。默认是365天有效期,这里改为3650,即10年有效期,避免频繁更换证书。

x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt

  5.注意,如果是直接在cmd里操作,需要在命令前面加openssl,如下

  6.在当前bin目录可以看到生成的三个文件

三、配置域名

  没有配置域名的时候,我们是通过ip来访问的。

  为了通过域名访问,需要修改hosts文件。(我的是64位电脑,32位的hosts文件位置请自行查找)

  

  修改hosts文件,自己起一个域名,并添加到hosts文件里。比如我起的域名是hellotom.pcauto.com.cn,我的ip是192.168.33.95。

  保存hosts文件,然后就可以通过域名来访问了。如果提示不安全可以忽略,因为是自定义的域名。

  注意,如果域名无法访问,可能是项目对域名做了判断,例如只允许*.pcauto.com.cn类型的域名访问,这个时候就要注意域名的格式。

四、安装nginx

  1.下载nginx

    官网下载列表:http://nginx.org/en/download.html

  2.解压

  3.双击nginx.exe即可启动nginx

    注意!启动过程中有问题的话,可以访问logs日志文件夹查看日志!下面修改了conf配置文件后,一定要多注意日志信息!!!

  4.为了方便停止nginx,不用到任务管理器里关闭进程,可以新建一个txt文本,添加如下代码后修改名字和后缀为stop.bat。要停止nginx的时候,双击这个文件即可。

nginx.exe -s stop

  5.如果不重启加载配置文件的话,可以新建一个txt文本,添加如下代码后修改名字和后缀为reload.bat(名字可以自定,后缀为bat即可)

nginx.exe -s reload

  6.创建一个文件夹ssl,把上面生成的证书复制过来。

五、配置https

  1.修改nginx的conf目录下的nginx.conf文件,注意先备份这个文件。

  修改nginx.conf文件。参考nginx文档:http://www.nginx.cn/doc/index.html

  为了方便阅读,这里做了一些删减,把文件里原来注释的代码都删掉了。

worker_processes  1;
pid logs/nginx.pid; events {
worker_connections 1024;
} http { upstream WEB_APP {
server 192.168.33.95:8080;
} server {
server_name hellotom.pcauto.com.cn;
listen 443 ssl;
listen 80; ssl_certificate /nginx32/ssl/server.crt;
ssl_certificate_key /nginx32/ssl/server.key;
keepalive_timeout 70; location / {
proxy_pass http://WEB_APP;
}
}
}

  修改完了之后,记得重启nginx并且查看日志,看看是否报错!!!

  2.通过https访问

   如果提示有风险,点击继续前往这个有风险的页面即可。可以看到,已经可以通过https访问了,但是由于是自定义的证书,所以提示不安全。

六、安装证书

  为了去掉不安全的提示,可以把证书加入到受信任的证书中。

  1.谷歌浏览器

  

  2.360浏览器

   打开Internet选项,点击内容,点击证书,然后添加证书。

  3.重新刷新页面

     谷歌浏览器还是会提示有风险,但是360浏览器会正常。注意,绿色的锁表示安全。

  本地https环境配置至此结束,喜欢的小伙伴们请点个赞吧!

ningx配置本地https环境的更多相关文章

  1. 利用Docker搭建本地https环境的完整步骤

    利用Docker搭建本地https环境的完整步骤 这篇文章主要给大家介绍了关于如何利用Docker搭建本地https环境的完整步骤,文中通过示例代码将实现的步骤介绍的非常详细,对大家的学习或者工作具有 ...

  2. phpStudy集成环境apche+openssl配置本地https

    OpenSSl windows环境搭建 网上各种文章都说需要下载多个工具,实际上只要一个程序就好,下载地址http://slproweb.com/products/Win32OpenSSL.html ...

  3. Ecplise 配置本地 https 测试

    今天做项目,需要关联Office 365.为了实现Office365的用户邮件信息与项目的实时同步,需要建立webhook订阅. Office 365 API 连接  https://graph.mi ...

  4. NGINX 配置本地HTTPS(双向认证)

    一.SSL协议加密方式 SSL协议即用到了对称加密也用到了非对称加密(公钥加密),在建立传输链路时,SSL首先对对称加密的密钥使用公钥进行非对称加密,链路建立好之后,SSL对传输内容使用对称加密. 1 ...

  5. phpstudy配置本地https

    百度经验(me'i经过测试) 首先申请免费的ssl证书,很多地方都可以申请.我是在腾讯云!如图 下载证书备份好.以免丢失.解压下载的证书,里面有4个文件夹相对应不同的安装环境,我们用的是Apache, ...

  6. nginx 配置本地https(免费证书)

    Linux系统下生成证书 生成秘钥key,运行: $ openssl genrsa -des3 -out server.key 20481会有两次要求输入密码,输入同一个即可 输入密码 然后你就获得了 ...

  7. nginx配置本地https

    客户端如何验证服务器的证书呢?服务器自己的证书必须经过某"权威"证书的签名,而这个"权威"证书又可能经过更权威的证书签名,这么一级一级追溯上去,最顶层那个最权威 ...

  8. 使用Vagrant配置本地开发环境

    从二零一四年开始使用vagrant+VirtualBox搭建linux开发环境,配置简单灵活,后台运行占用内存少,比vmware好用很多,果断弃用vmware转投vagrant的怀抱:无论是个人搭建开 ...

  9. centos6 nginx 配置本地https访问

    安装准备 yum install openssl openssl-devel 生成文件 cd /usr/local/nginx/conf # 生成密钥privkey.pem: openssl genr ...

随机推荐

  1. Could not find com.android.tools.build:gradle:3.3.0.

    导入新项目时报错: Error:Could not find com.android.tools.build:gradle:3.3.0. Searched in the following locat ...

  2. (二)Java数据结构和算法——数组

    一.数组的实现 上一篇博客我们介绍了一个数据结构必须具有以下基本功能: ①.如何插入一条新的数据项 ②.如何寻找某一特定的数据项 ③.如何删除某一特定的数据项 ④.如何迭代的访问各个数据项,以便进行显 ...

  3. node框架那些事儿

    一.简单介绍 express:适合初学者,模版引擎,路由,中间件 koa2:核心中间件 eggjs:企业级应用框架 二.express 服务端框架,提供路由功能,异常处理.路由系统+中间件构成web开 ...

  4. ABP .NETCore更新数据库时一直连接的之前数据库

    使用Update-Database -Verbose更新数据库时,在appsettings.json配置文件中已修改为新的连接字符串,但是使用命令更新数据库时仍然连接的是之前的数据库. 后来把代码移至 ...

  5. Redis 分布式锁,C#通过Redis实现分布式锁(转)

    目录(?)[+] 分布式锁一般有三种实现方式: 可靠性   分布式锁一般有三种实现方式: 1. 数据库乐观锁; 2. 基于Redis的分布式锁; 3. 基于ZooKeeper的分布式锁.本篇博客将介绍 ...

  6. 协程介绍, Greenlet模块,Gevent模块,Genvent之同步与异步

    昨日内容回顾 I/O模型,面试会问到I/O操作,不占用CPU.它内部有一个专门的处理I/O模块.print和写log 属于I/O操作,它不占用CPU 线程GIL保证一个进程中的多个线程在同一时刻只有一 ...

  7. 【转】深入理解javascript中的立即执行函数(function(){…})()

    javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花,当然,能理解各型各色的写法也是对javascript语言特性更进一步的深入理解. ( f ...

  8. 微信公众号开发 token 验证程序

    <?php traceHttp(); define("TOKEN", "gmll001"); $wechatObj = new wechatCallbac ...

  9. STL源码剖析——序列式容器#4 Stack & Queue

    Stack stack是一种先进后出(First In Last Out,FILO)的数据结构,它只有一个出口,元素的新增.删除.最顶端访问都在该出口进行,没有其他位置和方法可以存取stack的元素. ...

  10. Delphi Mercadopago支付【支持支持获取账户信息和余额、创建商店,商店查询、创建二维码、二维码查询、创建订单、订单查询、订单退款等功能】

    作者QQ:(648437169) 点击下载➨Delphi Mercadopago支付 [Delphi Mercadopago支付]支持 支持支持获取账户信息和余额.创建商店,商店查询.创建二维码.二维 ...