Nginx内网单机反向代理的实现


Posted in Servers onNovember 07, 2021

Nginx内网单机反向代理

Ubuntu18.04虚拟机1 IP:192.168.10.10
Ubuntu18.04虚拟机2 IP:192.168.10.11

测试目的:在虚拟机1上部署Nginx服务器(192.168.10.10:80),通过浏览器访问自设的域名,可以反向代理到内网虚拟机2(192.168.10.11:1234)。

虚拟机2最好原本就能用浏览器访问,显示界面区别于Nginx,比如安装一个tomcat。

1 Nginx安装

虚拟机1作为Nginx服务器,安装如下:

sudo apt-get install build-essential
sudo apt-get install libtool
sudo apt-get update
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install zlib1g-dev
sudo apt-get install openssl
sudo apt-get update
sudo apt-get install nginx

systemctl status nginx验证是否安装成功。

$ systemctl status nginx
● nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: en
   Active: active (running) since Mon 2021-11-01 10:07:38 CST; 4h 19min ago
     Docs: man:nginx(8)
 Main PID: 8915 (nginx)
    Tasks: 3 (limit: 9461)
   CGroup: /system.slice/nginx.service
           ├─8915 nginx: master process /usr/sbin/nginx -g daemon on; master_pro
           ├─8916 nginx: worker process
           └─8917 nginx: worker process
...

2 配置Nginx

虚拟机1:

/etc/nginx/nginx.conf是主配置文件,里面具体没研究过,但要注意把以下内容解除注释:

include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;

修改后service nginx restart重启Nginx。

创建/etc/nginx/conf.d/test.conf如下:

server {
  listen 80; #Nginx服务器监听端口
  charset     utf-8;
  server_name test.com; #域名

  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_set_header X-Nginx-Proxy true;

    proxy_pass http://192.168.10.11:1234/; #反向代理的IP+端口
    proxy_redirect off;
  }
}

proxy_pass http://192.168.10.10:1234/;这行中,最后的'/'斜杠一定不要忘记加上。

nginx -s reload更新配置

reload的原理:
1 首先检查配置语法是否有误
2 主进程尝试应用配置
3 如果成功:启动新工作进程,并关闭旧的进程
4 如果失败:主进程配置回滚

3 修改hosts文件

虚拟机1在/etc/hosts文件中添加:

192.168.10.10  test.com

4 测试

在浏览器中输入192.168.10.10,显示的是Nginx的文字,这是虚拟机1自身的Nginx效果。

而输入test.com,则是虚拟机2的应用内容,说明反向代理成功。

到此这篇关于Nginx内网单机反向代理的实现的文章就介绍到这了,更多相关Nginx内网反向代理内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
Nginx 反向代理解决跨域问题多种情况分析
Jan 18 Servers
nginx刷新页面出现404解决方案(亲测有效)
Mar 18 Servers
Apache Hudi集成Spark SQL操作hide表
Mar 31 Servers
深入解析Apache Hudi内核文件标记机制
Mar 31 Servers
Nginx速查手册及常见问题
Apr 07 Servers
Windows和Linux上部署Golang并运行程序
Apr 22 Servers
Windows server 2012搭建FTP服务器
Apr 29 Servers
Tomcat弱口令复现及利用
May 06 Servers
nginx 配置缓存
May 11 Servers
Nginx 配置 HTTPS的详细过程
May 30 Servers
超越Nginx的Web服务器caddy优雅用法
Jun 21 Servers
服务器nginx权限被拒绝解决案例
Sep 23 Servers
zabbix自定义监控nginx状态实现过程
总结高并发下Nginx性能如何优化
Rhit高效可视化Nginx日志查看工具
Nginx+Tomcat负载均衡集群的实现示例
Nginx反向代理学习实例教程
使用Nginx搭载rtmp直播服务器的方法
Oct 16 #Servers
详解Nginx 被动检查服务器的存活状态
Oct 16 #Servers
You might like
曾在DC漫画界反派角色扮演的演员,谁才是你心目中的小丑之王?
2020/04/09 欧美动漫
PHP中抽象类和抽象方法概念与用法分析
2016/05/24 PHP
Aliyun Linux 编译安装 php7.3 tengine2.3.2 mysql8.0 redis5的过程详解
2020/10/20 PHP
js判断浏览器的比较全的代码
2007/02/13 Javascript
TreeView 用法(有代码)(asp.net)
2011/07/15 Javascript
JQuery扩展插件Validate—4设置错误提示的样式
2011/09/05 Javascript
jquery移动listbox的值原理及代码
2013/05/03 Javascript
js 3种归并操作的实例代码
2013/10/30 Javascript
修复jQuery tablesorter无法正确排序的bug(加千分位数字后)
2016/03/30 Javascript
js实现倒计时及时间对象
2016/11/15 Javascript
JavaScript 巧学巧用
2017/05/23 Javascript
bootstrap-table实现服务器分页的示例 (spring 后台)
2017/09/01 Javascript
在 Linux/Unix 中不重启 Vim 而重新加载 .vimrc 文件的流程
2018/03/21 Javascript
使用原生js编写一个简单的框选功能方法
2019/05/13 Javascript
微信小程序实现底部弹出框
2020/11/18 Javascript
[03:01]2014DOTA2国际邀请赛 小组赛7月13日TOPPLAY
2014/07/14 DOTA
简单讲解Python中的数字类型及基本的数学计算
2016/03/11 Python
Python设计模式之桥接模式原理与用法实例分析
2019/01/10 Python
python实现彩色图转换成灰度图
2019/01/15 Python
python利用paramiko实现交换机巡检的示例
2020/09/22 Python
分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功
2020/11/20 Python
Nike澳大利亚官网:Nike.com (AU)
2019/06/03 全球购物
北京鼎普科技股份有限公司软件测试面试题
2012/04/07 面试题
继电保护工岗位职责
2014/01/05 职场文书
小学优秀班主任事迹材料
2014/05/17 职场文书
开学典礼策划方案
2014/05/28 职场文书
交通局领导班子群众路线教育实践活动对照检查材料思想汇报
2014/10/09 职场文书
村干部群众路线整改措施思想汇报
2014/10/12 职场文书
2014年统计工作总结
2014/11/21 职场文书
英语导游词
2015/02/13 职场文书
物业工程部经理岗位职责
2015/04/09 职场文书
单身证明格式样本
2015/06/15 职场文书
2016大学优秀学生干部事迹材料
2016/03/01 职场文书
react中的DOM操作实现
2021/06/30 Javascript
python脚本框架webpy模板控制结构
2021/11/20 Python
NodeJs使用webpack打包项目的方法详解
2022/02/28 NodeJs