准备工作:关闭虚拟机防火墙,selinux,关闭物理机防火墙,关闭物理机的代理。

第一步:配置上游服务器(这里用apache)

1.安装apache

# yum install httpd  -y

2.创建一个测试文件

# cd /var/www/html/
# echo "<h1>test for proxy</h1>" >./index.html

3.修改网络连接方式。(为了效果我们这里将上游服务器的和反向代理服务器分别设置在不同的网段)修改网络连接方式为任意一个虚拟网络即可(这里我用vmnet4)

4.修改IP地址

# cd /etc/sysconfig/network-scripts/
# vim ifcfg-eth0

修改里面的内容如下

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.5.2
NETMASK=255.255.255.0
GATEWAY=192.168.5.1

5.重启网络

# service network restart

6.启动apache

# service httpd restart

第二步:配置代理服务器(基于nginx)

1.添加一块网卡,并设置网络连接的方式和上游服务器相同(这里我用的是vmnet4)

2.修改第二块网卡的ip地址

# cd /etc/sysconfig/network-scripts/
# cp ifcfg-eth0 ./ifcfg-eth1
# vim ifcfg-eth1

修改里面的内容如下

DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.5.1
NETMASK=255.255.255.0

3.重启网络

# service network restart

4.安装nginx

yum install nginx -y

5.测试是否可以访问上游服务器中的网页

# curl http://192.168.5.2/index.html

结果如下<h1>test for proxy</h1> 说明可以正常连接上游服务器。

6.修改nginx的配置文件

# cd /etc/nginx/conf.d/
# vim default.conf

在配置文件的server中添加一个location如下:

location / {proxy_pass http://192.168.100.191:80/;      # 指定将用户请求代理到上游服务器proxy_set_header Host $host;                # 添加一个新首部,首部名称叫做Host,目的是为了保存客户端所请求的域名proxy_set_header X-Real-IP $remote_addr;    # 添加一个新首部,首部名称叫做X-Real-IP,值是一个变量的值}


7.重启nginx

# service nginx restart

8.测试
在本地物理机浏览器输入nginx第一块网卡的IP地址,页面显示结果如下图

注意:nginx所在虚拟机的第一块网卡ip地址需要和物理机的本地连接在一个网段(我的物理机本地ip地址为10.220.5.10,nginx所在虚拟机的第一块网卡ip为10.220.5.111)

基于nginx实现反向代理相关推荐

  1. 【网络编程】多个服务器的情况:nginx实现反向代理、nginx基于反向代理实现负载均衡

    如果我们有多个服务器,比如我们只有一个域名:我们可以利用其中一台服务器,通过nginx为这一个域名实现反向代理:进一步,我们可以利用这多台服务器,为这一个域名基于nginx的反向代理实现负载均衡. 文 ...

  2. 入门Nginx之-反向代理实现二级域名转发

    简介 前两天遇到开设子域名的问题,也就是二级域名,所以便开始对这方面进行了解.一直以为 www 开头的域名就是顶级域名,那真是太天真~~以 QQ 为例,顶级域名是 qq.com,而www.qq.com ...

  3. Nginx配置反向代理,一篇搞定!

    欢迎关注方志朋的博客,回复"666"获面试宝典 来源:blog.csdn.net/zxd1435513775/article/ details/102508463 一.引言 其他话 ...

  4. Nginx之反向代理与负载均衡实现动静分离实战

    Nginx之反向代理与负载均衡实现动静分离实战 什么是反向代理与负载均衡 Nginx仅仅作为Nginx  proxy反向代理使用的,因为这个反向代理功能表现的效果是负载均衡集群的效果. 负载均衡指的是 ...

  5. nginx的反向代理以及负载均衡模块的使用

    内容: 1.何为代理 2.nginx的反向代理模块以及使用 3.nginx的负载均衡模块以及使用 一.何为代理 代理,由字面意思可以理解为代为服务的是意思. 代理服务技术是一门很古老的技术,是在互联网 ...

  6. WAF学习之一——Nginx与反向代理

    文章目录 反向代理 什么是反向代理 反向代理与正向代理 工作流程 优点 Nginx模块 模块划分 模块处理 nginx作为反向代理的使用 作内容服务器的替身 作为内容服务器的负载均衡器 实例 1)环境 ...

  7. WEB请求处理二:Nginx请求反向代理

    上一篇<WEB请求处理一:浏览器请求发起处理>,我们讲述了浏览器端请求发起过程,通过DNS域名解析服务器IP,并建立TCP连接,发送HTTP请求.本文将讲述请求到达反向代理服务器的一个处理 ...

  8. WEB 请求处理二:Nginx 请求 反向代理

    上一篇<WEB请求处理一:浏览器请求发起处理>,我们讲述了浏览器端请求发起过程,通过DNS域名解析服务器IP,并建立TCP连接,发送HTTP请求.本文将讲述请求到达反向代理服务器的一个处理 ...

  9. 全网详细介绍nginx的反向代理、正向代理配置,location的指令说明,反向代理的两个示例代码以及全局块,events块和http快的说明。

    文章目录 1. 文章引言 2. 何谓反向代理 3. 解析nginx的配置文件 3.1 全局块(global block) 3.2 events块(events block) 3.3 http块(htt ...

最新文章

  1. jquery带token访问接口ajax
  2. win10 IIS(互联网信息服务) 及 外网访问tomcat
  3. 合肥云暨移动应用孵化基地全面运营,服务企业转型升级
  4. vue2.0 element-ui中的el-select选择器无法显示选中的内容
  5. 纪元java游戏_RPG纪元
  6. Mac中docker版本的ElasticSearch和Kibana安装及操作
  7. typecho 隐藏index.php,Typecho开启伪静态并隐藏index.php
  8. 彻底火了!这份Python学习贴,90%程序员用的上!
  9. 微软账号被暂时停用咋办_游戏账号交易要注意什么?买游戏账号有哪些可能会被找回去...
  10. windows系统: 解决ie谷歌浏览器证书错误.2021-05-27
  11. 【空号检测】批量手机号码空号检测查询软件,号码如何去除查询空号
  12. 科普硬解,软解,gpu,dsp等等的关系
  13. Android文件或文件夹压缩成.zip格式的压缩包
  14. dpdk mempool的逻辑
  15. 数据结构(二)算法绪论
  16. Python——赋值语句
  17. 理解热插拔技术:热插拔保护电路设计过程实例
  18. 堆排序|minHeapFixDown的递归和迭代形式
  19. 【云原生】Kubernetes PDB(Pod Disruption Budget)介绍与简单使用
  20. 智慧路灯行业市场规模有多大?

热门文章

  1. 11-17的学习总结(DOMfirstday)
  2. CSS之 :before :after的用法,伪类和伪元素的区别
  3. 备份全网服务器数据生产架构方案案例模型
  4. “中文四六级”考试来了!《国际中文教育中文水平等级标准》发布
  5. Nature论文爆出千行Python代码Bug,或影响百篇学术论文
  6. Python爬虫学到什么程度就可以去找工作了?
  7. 全球首个AI设计药物进入人体试验阶段
  8. 邮件服务器 文件服务器,搭建邮件、终端和文件服务器应用方案_服务器_服务器x86服务器-中关村在线...
  9. servlet web.xml配置详解
  10. 如何根据分页的当前页数查询数据_数据量很大的情况下,如何分页查询优化方案?...