由于项目改成了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. (原创)C++ 同步队列

    (原创)C++ 同步队列 同步队列作为一个线程安全的数据共享区,经常用于线程之间数据读取,比如半同步半异步线程池的同步队列. 其实做起来比较简单,要用到list.锁和条件变量,条件变量的作用是在队列满 ...

  2. WebGL学习笔记(十二):加载模型文件

    目前为止,我们用到的模型顶点uv信息等,都是直接定义在代码中的,实际使用中,这些数据应该是由3D编辑器编辑好后按照一定的格式存储在文件中的,我们需要从文件中提取出对应的数据之后,组合成我们可以使用的信 ...

  3. 大幅度改变celery日志外观,修改成日志可点击跳转和鲜艳五彩日志,解决脚本中已添加handler的logger和框架日志重复记录问题。

    大幅度改变celery日志外观,修改成日志可点击跳转和鲜艳五彩日志,解决脚本中已添加handler的logger和框架日志重复记录问题.打猴子补丁. 先把脚本中的所有logger的handlers全部 ...

  4. window 安装使用npm

    [安装步骤] 一.安装node.js 1.前往node.js官网下载并安装工具,这里安装路径选到D盘,D:\nodejs 安装完毕后在命令行输入以下命令测试是否安装成功,正确会出现版本号 npm -v ...

  5. sql 连续分组判断 partition by

    partition by 会根据分类字段进行排序 加上rownum 可以形成 每组从1开始重新排序 举个例子, 我要根据时间为依据,连续出现合并为一组,统计每组在区间里的次数 ------------ ...

  6. Pandas的DataFrame

    1. 手工创建DataFrame a = [[1, 2, 2],[3,None,6],[3, 7, None],[5,None,7]] data = DataFrame(a) 2. Excel数据数据 ...

  7. oracle 解决 exp 空表不能导出的问题

    原因:oralce_11g 中有个新特性,当表无数据时,不分配 segment,以节省空间,这也就导致了 exp 在导出表时,没有数据的表会被忽略 方法一:我们可以向表中插入数据,在删除,这样数据表就 ...

  8. java.lang.ClassNotFoundException: org.apache.http.impl.client.HttpClientBuilder

    添加依赖即可:compile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.5.6' ,注意是apache的包

  9. Tomcat总结四种部署方式

    静态部署 一.Webapps 把项目复制到Tomcat的Webapps 把war包复制到Tomcat的Webapps下 *修改Webapps的默认路径: * Tomcat的conf目录下的server ...

  10. java-完全解耦-例子

    class filter{ public String name(){ return getClass().getSimpleName(); } public String process(Strin ...