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 相关文章推荐
destoon在各个服务器下设置URL Rewrite(伪静态)的方法
Jun 21 Servers
使用nginx动态转换图片大小生成缩略图
Mar 31 Servers
nginx location中多个if里面proxy_pass的方法
Mar 31 Servers
nginx里的rewrite跳转的实现
Mar 31 Servers
fastdfs+nginx集群搭建的实现
Mar 31 Servers
制作能在nginx和IIS中使用的ssl证书
Jun 21 Servers
详解Nginx 被动检查服务器的存活状态
Oct 16 Servers
Nginx源码编译安装过程记录
Nov 17 Servers
Nginx配置https的实现
Nov 27 Servers
服务器SVN搭建图文安装过程
Jun 21 Servers
Apache自带的ab压力测试工具的实现
Jul 23 Servers
Nginx跨域问题解析与解决
Aug 05 Servers
zabbix自定义监控nginx状态实现过程
总结高并发下Nginx性能如何优化
Rhit高效可视化Nginx日志查看工具
Nginx+Tomcat负载均衡集群的实现示例
Nginx反向代理学习实例教程
使用Nginx搭载rtmp直播服务器的方法
Oct 16 #Servers
详解Nginx 被动检查服务器的存活状态
Oct 16 #Servers
You might like
CodeIgniter输出中文乱码的两种解决办法
2014/06/12 PHP
thinkphp学习笔记之多表查询
2014/07/28 PHP
PHP实现登录搜狐广告获取广告联盟数据的方法【附demo源码】
2016/10/14 PHP
PHP+Session防止表单重复提交的解决方法
2018/04/09 PHP
初学JavaScript_03(ExtJs Grid的简单使用)
2008/10/02 Javascript
两种常用的javascript数组去重方法思路及代码
2013/03/26 Javascript
js监听键盘事件示例代码
2013/07/26 Javascript
使用ImageMagick进行图片缩放、合成与裁剪(js+python)
2013/09/16 Javascript
js日期联动示例
2014/05/02 Javascript
DOM基础教程之使用DOM控制表单
2015/01/20 Javascript
jQuery实现图片文字淡入淡出效果
2015/12/21 Javascript
JavaScript实现点击文本自动定位到下拉框选中操作
2016/06/15 Javascript
AngularJS ng-bind-html 指令详解及实例代码
2016/07/30 Javascript
Jquery AJAX POST与GET之间的区别详细介绍
2016/10/17 Javascript
JS非空验证及邮箱验证的实例
2017/08/11 Javascript
vue中配置mint-ui报css错误问题的解决方法
2017/10/11 Javascript
使用Angular-CLI构建NPM包的方法
2018/09/07 Javascript
Vue官方推荐AJAX组件axios.js使用方法详解与API
2018/10/09 Javascript
Node.js使用MongoDB的ObjectId作为查询条件的方法
2019/09/10 Javascript
[05:26]2014DOTA2西雅图国际邀请赛 iG战队巡礼
2014/07/07 DOTA
python 正则表达式 概述及常用字符
2009/05/04 Python
在Python的Django框架中使用通用视图的方法
2015/07/21 Python
Python读取指定目录下指定后缀文件并保存为docx
2017/04/23 Python
详解Python3中的 input() 函数
2020/03/18 Python
python中strip(),lstrip(),rstrip()函数的使用讲解
2020/11/17 Python
中外合拍动画首获奥斯卡提名,“上海出品”《飞奔去月球》能否拿下最终大奖?
2021/03/16 国漫
法国一家多品牌成衣精品中/高档商店:Graduate Store
2019/08/28 全球购物
德国购买门票网站:ADticket.de
2019/10/31 全球购物
哪些情况下不应该使用索引
2015/07/20 面试题
如何用Java判断一个文件或目录是否存在
2012/11/19 面试题
安全生产先进个人材料
2014/02/06 职场文书
普通简短的个人自我评价
2014/02/15 职场文书
2014年教师业务工作总结
2014/12/19 职场文书
Redis做数据持久化的解决方案及底层原理
2021/07/15 Redis
CentOS7安装GlusterFS集群以及相关配置
2022/04/12 Servers
详解CSS3浏览器兼容
2022/12/24 HTML / CSS