由于项目改成了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. 研发团队是该制定OKR还是KPI?

    绩效管理和OKR的目标管理,是前行的两条腿,缺谁都会寸步难行.正确的做法是把企业的使命和任务,转化为经营目标,然后再用KPI.OKR等绩效管理工具,分解.执行.考核.. KPI是一套绩效管理的方法.全 ...

  2. 自定义程序启动脚本加入到supervisord下管理

    ubuntu14.04 系统,直接通过apt-get安装即可 apt-get install supervisord 官网:http://www.supervisord.org/ 主配置文件 这个配置 ...

  3. 调试node接口

    从node服务端到浏览器端,调试node脚本,验证接口功能是否正常. 一.温故知新 https://www.cnblogs.com/camille666/p/nodejs_server.html ht ...

  4. 第2部分 Elasticsearch查询-请求体查询、排序

    一.请求体查询 请求体 search API, 之所以称之为请求体查询(Full-Body Search),因为大部分参数是通过http请求体而非查询字符串来传递的. 请求体查询:不仅可以处理自身的查 ...

  5. OTP详解

    OTP(One Time Programmable)是单片机的一种存储器类型,意思是一次性可编程:程序烧入单片机后,将不可再次更改和清除. 随着嵌入式应用的越来越广泛,产品的安全也显得越来越重要.一方 ...

  6. javascript异步上传压缩图片并立即显示图片

    javascript异步上传压缩图片并立即显示图片<pre><!doctype html><html><head><meta charset=&q ...

  7. 【LOJ3099】[SNOI2019]积木(搜索)

    lca 学长出的我省省选的神仙题目 省强我菜系列 题目 LOJ3399 分析 我可能说不清楚,对着代码理解吧 -- 感觉这题的主要难点是:不要想他具体是怎么操作的,只要知道他一定存在一种操作方式能够实 ...

  8. JSON学习(二)

    首先,定义一个实体类Person: import com.fasterxml.jackson.annotation.JsonFormat; import java.util.Date; public ...

  9. a++与++a,谈谈C++的参数传递

    先看一段代码: #include<iostream> using namespace std; void func(int a, int b) { cout << a < ...

  10. SSM整合学习 一

    一:新建maven项目 File--New Project选择maven项目下的maven-archetype-webapp,输入GroupId.Artifactld,选择maven信息,新建mave ...