ningx配置本地https环境
由于项目改成了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环境的更多相关文章
- 利用Docker搭建本地https环境的完整步骤
利用Docker搭建本地https环境的完整步骤 这篇文章主要给大家介绍了关于如何利用Docker搭建本地https环境的完整步骤,文中通过示例代码将实现的步骤介绍的非常详细,对大家的学习或者工作具有 ...
- phpStudy集成环境apche+openssl配置本地https
OpenSSl windows环境搭建 网上各种文章都说需要下载多个工具,实际上只要一个程序就好,下载地址http://slproweb.com/products/Win32OpenSSL.html ...
- Ecplise 配置本地 https 测试
今天做项目,需要关联Office 365.为了实现Office365的用户邮件信息与项目的实时同步,需要建立webhook订阅. Office 365 API 连接 https://graph.mi ...
- NGINX 配置本地HTTPS(双向认证)
一.SSL协议加密方式 SSL协议即用到了对称加密也用到了非对称加密(公钥加密),在建立传输链路时,SSL首先对对称加密的密钥使用公钥进行非对称加密,链路建立好之后,SSL对传输内容使用对称加密. 1 ...
- phpstudy配置本地https
百度经验(me'i经过测试) 首先申请免费的ssl证书,很多地方都可以申请.我是在腾讯云!如图 下载证书备份好.以免丢失.解压下载的证书,里面有4个文件夹相对应不同的安装环境,我们用的是Apache, ...
- nginx 配置本地https(免费证书)
Linux系统下生成证书 生成秘钥key,运行: $ openssl genrsa -des3 -out server.key 20481会有两次要求输入密码,输入同一个即可 输入密码 然后你就获得了 ...
- nginx配置本地https
客户端如何验证服务器的证书呢?服务器自己的证书必须经过某"权威"证书的签名,而这个"权威"证书又可能经过更权威的证书签名,这么一级一级追溯上去,最顶层那个最权威 ...
- 使用Vagrant配置本地开发环境
从二零一四年开始使用vagrant+VirtualBox搭建linux开发环境,配置简单灵活,后台运行占用内存少,比vmware好用很多,果断弃用vmware转投vagrant的怀抱:无论是个人搭建开 ...
- centos6 nginx 配置本地https访问
安装准备 yum install openssl openssl-devel 生成文件 cd /usr/local/nginx/conf # 生成密钥privkey.pem: openssl genr ...
随机推荐
- 解决Invalid Plugin needs a valid package.json
首先.npm install -g plugman 然后,plugman create --name [插件名字] --plugin_id [插件id] 这样会生成一个除了pa ...
- Docker管理控制相关资源
一台宿主机可以放多个容器,默认的情况下,Docker 没有对容器进行硬件资源的限制,当容器负载过高时会尽可能的占用宿主机资源,所以有时候我们需要对容器的资源使用设置一个上限,这里就需要管理 Docke ...
- Dart入门
要学Flutter必先学Dart,Dart和Java的语法很像,学过Java的人很快就能入手 Dart下载地址https://dart.dev/get-dart VSCode下载地址https://c ...
- C++ 右值引用与move
C++ 右值引用与move 右值引用 C++中所有的值都必然属于左值.右值二者之一.左值是指表达式结束后依然存在的持久化对象,右值是指表达式结束时就不再存在的临时对象. 所有的具名变量或者对象都是左值 ...
- VM无法正常使用桥接模式获取IP上网
问题: 有时候会遇到VM使用桥接模式时无法正常获取IP的情况 原因: 初步怀疑是因为你的电脑是双网卡 解决方法: 这时候,就需要修改VM的虚拟网络编辑器的配置 解决步骤: 编辑->虚拟网络编辑器 ...
- RubyGem镜像/ruby国内镜像
RubyGem 网上推荐的淘宝的镜像已经无法访问 清华镜像 # 添加 TUNA 源并移除默认源 gem sources --add https://mirrors.tuna.tsinghua.edu. ...
- Linux磁盘空间不足
Linux磁盘空间不足 描述:zabbix报警磁盘空间不足 1.登录服务器,查看磁盘空间 2.筛选空间占用的文件 层层筛选 3.将没用的文件删除 rm -f /opt/export/log/np_se ...
- spring boot 实现定时任务
定时任务或者说定时调度,是系统中比较普遍的一个功能,例如数据归档.清理,数据定时同步(非实时),定时收发等等都需要用到定时任务,常见的定时调度框架有Quartz.TBSchedule等. 如何在Spr ...
- Redis 分布式锁,C#通过Redis实现分布式锁(转)
目录(?)[+] 分布式锁一般有三种实现方式: 可靠性 分布式锁一般有三种实现方式: 1. 数据库乐观锁; 2. 基于Redis的分布式锁; 3. 基于ZooKeeper的分布式锁.本篇博客将介绍 ...
- Docker Compose 部署Nginx服务实现负载均衡
Compose简介: Compose是Docker容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器,使用Docker Compose,不再需要使用shell脚本来启动容器.Comp ...