Linux Apache 配置反向代理

最近遇到一个项目,需要访问某单位的内网服务器,对方要求必须要配置一个前置机,来转发所有的web请求,然后就学了一下反向代理,查了一些资料,也完成了HelloWorld的例子。

关于反向代理的介绍,可以参考 介绍1介绍2 相互补充吧,关于概念的介绍挺不错的。

我现在仅仅是完成了第一步,就是配置转发请求。

操作系统是centos,关于linux安装apache就不多说了

apache安装完成后,进入 /etc/httpd/conf目录,打开 httpd.conf文件

然后

  • 1.先检查代理模块是否开启
  • 2.配置最基本的反向代理
  • 3.重启apache

第一步

看一下

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so

是否打开,如果没有打开,去掉上面代码前面的#

第二步

打开/etc/httpd/conf目录下的httpd.conf,在末尾添加如下代码

<VirtualHost 123.123.123.123:8800>
ServerName example
ServerAlias example
ProxyRequests off
<Proxy *>
    Order allow,deny
    Allow from all
</Proxy>
ProxyPass / http://www.baidu.com/
ProxyPassReverse / http://www.baidu.com/
</VirtualHost>

简单说一下这几个参数

  • 123.123.123.123 是服务器使用的IP地址
  • 8800 是apache所监听的端口
  • ProxyPass 与 ProxyPassReverse 后面的『http://www.baidu.com/』是需要我们的请求的真正的目的服务器,其前边的 空格+/+空格 也是属于我们配置的一部分

第三步

重启apache, 进入 /etc/init.d/ 目录,执行 ./httpd restart

这样,当我们在客户端浏览器中输入 http://123.123.123.123:8800/ 时,页面将返回百度首页,当我们访问访问http://123.123.123.123:8800/admin/index.html 时,应该返回 http://www.baidu.com/search/error.html 因为我们访问的路径不存在嘛

以上就是最基本的使用apache配置代理转发请求

更详细的配置可以再看更详细的博客

如:

apache配置正向代理与反向代理

Ubuntu配置反向代理

时间: 2024-10-05 18:23:53

Linux Apache 配置反向代理的相关文章

Apache配置反向代理、负载均衡和集群(mod_proxy方式)

Apache配置负载均衡和集群使用mod_jk的方式比较多.但是mod_jk已经停止更新,并且配置相对复杂.Apache2.2以后,提供了一种原生的方式配置负载均衡和集群,比mod_jk简单很多. 1.Apache配置反向代理    正向代理一般是指PC连接到代理服务器,由代理服务器转发请求到网站.而反向代理指的是用户将请求发送给反向代理服务器,由反向代理服务器将请求路由转发到具体的服务器.    比如机房有两个Tomcat提供服务,但是由于防火墙的原因,用户不能直接访问.这个时候,可以使用反向

Tomcat:利用Apache配置反向代理、负载均衡

Apache 反向代理.负载均衡 准备工作 1.  2 个tomcat实例 2.  安装Apache server2.2 基于apache server配置反向代理 在这个配置中,只使用到了apache server,没有使用到tomcat. 1)  ${apacheserver}/conf/extra/httpd-vhosts.conf在配置一个使用反向代理的虚拟主机 <VirtualHost *:80> ServerAdmin [email protected] ServerName ww

wdlinux中apache配置反向代理模块

想要在.htaccess中开启反向代理功能都不行[apache中没有mod_proxy模块] .htaccess 文件内容如下 RewriteEngine On RewriteBase / RewriteRule ^(.*)$ http://sogou.weixin.com/$1 [P] "proxy|P"(强制为代理) 此标记使替换成分被内部地强制作为代理请求发送,并立即中断重写处理,然后把处理移交给mod_proxy模块.你必须确保此替换串是一个能够被mod_proxy处理的有效U

apache配置反向代理笔记

1.先确认/usr/lib/apache2/modules下是否有mod_proxy.so mod_proxy_balancer.so  mod_proxy_http.so三个模块,如果有的话,在/etc/apache2/mods-enabled里面用ln建立链接,执行代码如下: ln -s /etc/apache2/mods-available/proxy.load /etc/apache2/mods-enabled/proxy.loadln -s /etc/apache2/mods-avai

apache配置反向代理

http.conf 去掉前面的#号 LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_http_module modules/mod_proxy_http.so 然后在vhosts.conf配置文件里加入如下代码 <VirtualHost *:80> DocumentRoot "D:\webser\www" ServerName test.com ServerAlias ErrorLog "

Nginx和Apache服务器上配置反向代理

在实际项目过程中,由于网站要用到一个在线编辑器(个性化的在线编辑软件),需要跨域进行通信!由于跨域通信较多,所以当时就想到在网站服务器上代理编辑软件的请求! 这就是“反向代理”的实际需求! 一.Nginx上配置反向代理 location /edit/ { proxy_pass http://edit.host.net/; #Proxy Settings proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real

【Asp.net Core】在 Linux 子系统中安装 nginx 并配置反向代理

上一篇鸟文中,老周已经介绍过在 Ubuntu 子系统中安装 dotnet-sdk 的方法,本文老周给大伙伴们说说安装 nginx 服务,并配置反向代理.同样,老周假设你从来没有用过 Linux,所以老周会讲得很细.可能因为这样,博客园每次都把老周的文章撤下首页.不管他,他撤他的,我推我的,Who 怕 Who. 其实,你可以选择 nginx 或 Apache,不过老周更喜欢 nginx 一些,总觉得 Apache 有些别扭.当然了,asp.net core 应用是可以独立运行,所以,你确实可以直接

apache做反向代理+负载均衡器配置

将Apache作为LoadBalance前置机分别有三种不同的部署方式,分别是: 1 )轮询均衡策略的配置 进入Apache的conf目录,打开httpd.conf文件,在文件的末尾加入: ProxyPass / balancer://proxy/         #注意这里以"/"结尾 <Proxy balancer://proxy> BalancerMember http://192.168.6.37:6888/ BalancerMember http://192.16

Apache上配置反向代理以及负载均衡配置

之前一个项目需要在Apache上配置负载均衡,由于事情繁多,时间紧迫,没有时间去弄. 今天抽时间测试了一把,至少是可以进行代理了. 现将如何配置反向代理和负载均衡分别描述. 1.反向代理 步骤: (1)在Apache的配置文件httpd.conf中打开反向代理的模块 #----------------------------------------------- LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_conne