nginx 代理 http、https 配置
nginx 代理 http、https 配置
- http配置
- ssl https 配置
- nginx 部署安装在之前的文章中已有教程,这里不再叙述,详情访问:nginx在centos7环境下安装
- 本文主要讲述配置代理,包含http 、https代理,配置文件在 nginx 安装目录下的 conf/nginx.conf ,
- 如果想了解配置文件参数详情详见:nginx在centos7环境下安装
- 按照nginx在centos7环境下安装,nginx 安装目录为 /usr/local/nginx 。如需查找用命令:
whereis nginx
http配置
编辑 conf/nginx.conf
cd /usr/local/nginxvim conf/nginx.conf
如下图所示,这里新增了8082端口的代理模块,listen 参数为配置端口,location / 为代理地址前缀(为保证安全可移除),保存重启nginx 后, 浏览器访问 ip:8082 就能看到代理页面。
listen 8082:代表监听 8082 端口
server_name test:代表外网访问的域名
location / {}:代表一个过滤器,/匹配所有请求,我们还可以根据自己的情况定义不同的过滤,比如对静态文件js、css、image制定专属过滤
root html:代表站点根目录
index index.html:代表默认主页每个代理模块可以配置多个代理地址,如下图所示,代理前缀为event,代理地址为 http:127.0.0.1:8081/event,重启nginx服务后,浏览器打开 ip:8082/event 即可看到系统界面。
location /{}:代表过滤器,用于制定不同请求的不同操作
proxy_pass:代表后端服务器组名,此组名必须为后端服务器站点域名server {listen 8082;server_name test;location / {root html;index index.html index.htm;}location /event{proxy_pass http://127.0.0.1:8081/event;proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "Upgrade";proxy_connect_timeout 4s;proxy_read_timeout 120s;proxy_send_timeout 12s;}}
ssl https 配置
配置 ssl 之前,先保证nginx 安装了ssl模块,详情在 nginx在centos7环境下安装。
生成证书
确定是否安装 openssl
which openssl # 或者 openssl version
如果没有安装,通过apt-get或者yum等方式安装即可
sudo apt-get install openssl
进入nginx 安装目录,创建key文件夹并进入
cd /usr/local/nginx mkdir key cd key
生成一个名为“ssl.key”的 RSA key文件:执行结果:生成ssl.pass.key 和 ssl.key
openssl genrsa -des3 -passout pass:casia -out ssl.pass.key 2048openssl rsa -passin pass:casia -in ssl.pass.key -out casia-ssl.key
删除中间文件
rm ssl.pass.key
利用已经生成的 ssl.key 文件,进一步生成 ssl.csr 文件
openssl req -new -key casia-ssl.key -out casia-ssl.csr
执行此行命令会提示输入密码,按回车即可,因为前面我们在生成 ssl.key 时选择了密码留空。 最后我们利用前面生成的 ssl.key 和 ssl.csr 文件来生成 ssl.crt 文件,也就是自签名的 SSL 证书文件:
openssl x509 -req -days 3650 -in casia-ssl.csr -signkey casia-ssl.key -out casia-ssl.crt
这一步之后,我们得到一个自签名的 SSL 证书文件 ssl.crt,有效期为 3650 天。此时,ssl.csr 文件也已经不再被需要,可以删除掉了
rm ssl.csr
将.crt的ssl证书文件转换成.pem格式
openssl x509 -in casia-ssl.crt -out casia-ssl.pem
删除 casia-ssl.crt casia-ssl.csr
sudo rm -rf casia-ssl.crt casia-ssl.csr
自此证书生成完毕,开始配置代理!
配置代理地址
修改nginx配置文件
cd /usr/local/nginxvim conf/nginx.conf
增加server块,配置监听端口61231,注意端口后要加上 ssl。同时设置 ssl_certificate 参数值指向生成的 …/key/casia-ssl.pem 证书,设置 ssl_certificate_key 参数值指向生成的 …/key/casia-ssl.key 证书
server {listen 61231 ssl;server_name localhost;ssl_certificate ../key/casia-ssl.pem;ssl_certificate_key ../key/casia-ssl.key;ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;client_max_body_size 500M;location / {root html;index index.html index.htm;proxy_set_header Host $http_host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;}}
- 保存重启nginx,浏览器访问 https://ip:61231 即可看到信息页面!
nginx 代理 http、https 配置相关推荐
- 配置nginx代理实现https访问
配置nginx代理实现https访问 Google宣布从Chrome网络浏览器的下一个稳定版本(90)开始,将为地址栏中输入的所有URL网址默认选择HTTPS协议.这意味着未启用HTTPS的网站的打开 ...
- 阿里云个人站点基于nginx代理搭建https协议支持
阿里云个人站点基于nginx代理搭建https协议支持 准备工作 购买免费个人版dv证书 配置nginx 开放防火墙端口 检测是否成功 准备工作 1.个人服务器 2.安装了ssl_moudle的ngi ...
- Nginx下的https配置
https: https(Secure Hypertext Transfer Protocol) 安全超文本传输协议 它是以安全为目标的http通道,即它是http的安全版,它使用安全套接字层(SSL ...
- Nginx之原理,限流,日志切割,正反代理,HTTPS配置
文章目录 1 Nginx原理 1.1 Nginx怎么处理请求 1.2 Nginx是如何实现高并发 1.3 Nginx高可用性怎么配置 1.4 为什么Nginx不使用多线程 1.5 Nginx动态资源. ...
- Nginx代理缓冲proxy_buffering配置
什么是代理缓冲 Nginx作为一个常用的反向代理,提供了代理缓冲的功能.它允许nginx将server端的响应读取下来缓存在本地内存或磁盘中,再已合适的速度发送给客户端. 为什么要有代理缓冲 在互联网 ...
- nginx 代理的简单配置
以下配置在 nginx.conf 修改 提供简单的静态服务 http{events {worker_connections 1024; ## Default: 1024 //必须设置事件}server ...
- nginx代理 指向_nginx配置url重定向-反向代理
本文系统:Centos6.5_x64 三台主机:nginx主机,hostname: master.lansgg.com IP: 192.168.10.128 apache主机,hostname: c ...
- Nginx 代理以及HTTPS (二)
一.HTTPS解析 https 加密 私钥 公钥 http 的握手 是确认网络是连通的. https 的握手 是一个加密的过程 加密图 二. 使用Nginx 部署HTTPS 服务 1.证书生成命令(h ...
- Nginx跨域解决配置示例
简介 在日常学习和工作开发中,需要请求两个不同配置的请求经常存在,本文介绍如果还使用Nginx配置解决其跨域问题 相关理论 首先需要了解什么是跨域,下面的两个文章说的很好,请仔细阅读后,然后自己去动手 ...
- nginx 1.14 php,nginx 1.14.0 配置部署 thinkphp 5.1
开始接触NGINX,配置tp5配了半天,找不到具体原因,于是用网上搜索到的配置复制粘贴搞定. 感谢 https://blog.csdn.net/qq_36431213/article/details/ ...
最新文章
- windows10 自动开机、关机
- 用 Flask 来写个轻博客 (17) — MV(C)_应用蓝图来重构项目
- li浮动时ul自适应高度方法
- HOMEBREW安装之后需要需要把他安装到路径之中
- 短视频技术详解:Android端的短视频开发技术
- java实现缓存方式_【Java】【器篇】【缓存】一个轻量的缓存实现方式
- socket 编程入门教程(一)TCP server 端:4、构造函数涉及的概念
- docker 定时重启脚本_使用 Go 添加启动脚本
- 【编程训练-考研上机模拟】综合模拟2-2019浙大上机模拟(晴神)
- C++学习之Dev-C++安装与调试
- 2013年最新最热播的电影 合集
- java中的IO流之文件复制
- 【Python】- yield 使用浅析
- micropython thread_功能更新!C 函数也能在 MicroPython 中被调用啦
- C++ 取模、求余运算
- 开发中使用第三方工具/服务
- 12306列车时刻表查询api功能实现
- 元宇宙火了,智能家居跟不跟?
- 基于Verilog HDL的数字时钟
- Vj程序设计复杂模拟题训练
热门文章
- Java并发——AQS、AQS到底什么是AQS?这玩意干啥的?
- patho爬虫-爬取--华夏基金代码
- 第3-7课:推箱子游戏
- 梦幻西游手游服务器维护公告,梦幻手游1月25日维护公告:新春活动开启
- Improve Performance of C++ Codes (1) -- 使用初始化列表还是赋值语句?
- 计算机科学 浙江大学 机器学习,浙江大学计算机科学技术学院博士研究生导师简介:蔡登...
- win7Aero效果的网卡驱动
- 利用webhook实现发送通知到倍洽 BearyChat
- Dozer 时间转换问题
- XP系统测试显示器软件在哪,WinXP系统下如何检测显示器白点