Apache的reverse proxy设定

工作需要,从同一个端口进入,在服务器端分流,去执行不同端口的服务。用apache的reverse proxy的功能实现。

①「apache2ctl -M」查看proxy module(下面的★)是否加载。如果没有加载,执行「a2enmod proxy_http」加载。

[email protected]:/etc/apache2/sites-available# apache2ctl -M
Loaded Modules:
 core_module (static)
 so_module (static)
 mpm_event_module (shared)
 negotiation_module (shared)
 proxy_module (shared)        ★
 proxy_http_module (shared)  ★
 rewrite_module (shared)
 setenvif_module (shared)
 status_module (shared)

②Port 9596用的httpd conf文件里追加reverproxy的设定

作为前提,确保以下文件,及文件夹的存在

/var/wwwtest_9596/test/index.html

/var/wwwtest_9596/test/apachetest

<VirtualHost *:9596>
        ServerAdmin [email protected]

        DocumentRoot /var/wwwtest_9596/

        ########追加部分########
        <IfModule mod_proxy.c>
        #Reverse Proxy
        <Proxy *>
                Order Deny,Allow
                Deny from all
                Allow from all
        </Proxy>

        ProxyRequests Off
        #proxy setting

        ProxyPass                   /test/apachetest/ http://127.0.0.1:80/
        ProxyPassReverse        /test/apachetest/ http://127.0.0.1:80/
        </IfModule>
       ########追加部分########
</VirtualHost>

③「service apache2 restart」,重启apache服务,以让上述proxy设定生效。

④从浏览器里输入http://serverip:9596/test,此时执行的是9596端口下的服务。

⑤从浏览器里输入http://serverip:9596/test/apachetest/,此时执行的是80端口下的服务。一般80下默认的是打开apache的测试页面。

其实apache做了一个替换http://serverip:9596/test/apachetest/  -> http://serverip:80/

其实如果带参数的话,会自动传过去。http://serverip:9596/test/apachetest/?u=username&p=password  -> http://serverip:80/?u=username&p=password

时间: 2024-10-10 23:30:26

Apache的reverse proxy设定的相关文章

Forward Proxy &amp; Reverse Proxy | 正向代理 和 反向代理

对请求和响应内容不做修改的转发的服务器,被称为代理服务器.代理服务器分为两种类型:正向代理 和 反向代理. 正向代理:面向互联网,从更广范围获取信息的代理. 反向代理:面向内部,一般用于某企业的网站的前端的代理.反向代理能承担负载均衡,身份认证,内容缓存的任务.这些功能在反向代理上面实现会显得很自然. 正向代理: 如果使用过 vpn 或者 shadowsocks 等FQ工具访问 Google,那么就是在使用正向代理服务器. 下面的图例解释了正向代理的使用.正向代理服务器在互联网中扮演用户的角色,

Forward Proxy vs Reverse Proxy

Overview We've talked about reverse proxy servers and how they can really be good at protecting the servers in your internal network. Lately, however, we've realized that some people actually think we're talking about forward proxy servers or that th

reverse proxy and forward proxy

1 什么是forward proxy 一句话,client的proxy就是forward proxy. 2 什么是reverse proxy 一句话,server的proxy就是reverse proxy. 3 difference between them 3.1 forward和reverse forward是前向的意思,reverse是反向的意思.它们是一对相对的概念. 3.2 forward proxy用于给一群请求发起者提供代理 forward proxy,是向服务器端屏蔽client

Reverse Proxy Vs Forward Proxy

Reverse Proxy What is Reverse Proxy Server A reverse proxy server is an intermediate connection point positioned at a network's edge. It receives initial HTTP connection requests, acting like the actual endpoint. Essentially your network's traffic co

Ubuntu Apache加载proxy模块

Apache配置一个反向代理reload配置后显示报错,配置文件中代理模块未configure.无法识别参数:ProxyPassProxyPa***everse 查看/var/log/apache/error.log 日志警告:[warn] proxy: No protocol handler was valid for the URL /. If you are using a DSO version of mod_proxy, make sure the proxy submodules a

IIS ARR(Application Request Route)与反向代理(Reverse Proxy)

为何要用反向代理? 这里说说我的场景, 我在服务器上假设了SVN(Visual SVN)用的端口是:8080, 而我想通过输入svn.niusys.com就可以访问我的SVN服务器,也就是要通过80端口访问到内部8080端口的的数据, 那这个时候我们就可以通过反向代理,把所有请求到80端口的数据,发送到8080, 让后再把8080端口返回的数据从80端口返回给原始请求. 反向代理有什么好处呢? 1. 常规应用里面可以解决端口的问题, 像上面举的例子, 我的主要用的地方就是很多组建都是Apache

linux下proxy设定的一般方法

在linux下配置测试环境时,经常遇到代理服务器配置的相关问题,在这里总结一些,为以后节省些时间. 也希望对需要的人有所帮助 linux下proxy的常规设置 一般是把如下环境变量的设置放到/etc/profile.d/proxy.sh文件中. 对于没有系统权限的用户,可以将下面的内容添加到自己用户目录下的.profile文件中. 这样登录后,大多数的应用程序都可以正常上网. #proxy=http://用户名:密码@ProxyURL或IP地址:端口号 proxy=http://ProxyURL

反向代理服务器(Reverse Proxy)

普通代理服务器是帮助内部网络的计算机访问外部网络.通常,代理服务器同时连接内网和外网.首先内网的计算机需要设置代理服务器地址和端口,然后将HTTP请求发送到代理服务器,最后由代理服务器转发. 而反向代理服务器是帮助外网计算机访问内网服务.外网计算机不需要进行配置,直接按照域名或者IP地址访问反向代理服务器,然后代理服务器请求内网的服务器,获取响应的数据,然后再发送给计算机.对于外网计算机来说,反向代理服务器像是一个Web服务器.但实际上,反向代理服务器不存放对应的资源.通过反向代理服务器,可以保

Nginx+Apache+PHP超时时间设定

今天在做一个数据导入,超时时间一直设置不对,经过几轮查询以后,才知道需要做如下多环节的配置. Nginx需要配置如下超时配置 fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; 如果使用的是Nginx的代理服务,需要添加如下配置 location / { proxy_read_timeout 300; } PHP端需要修改如下配置 max_execution_time = 300 max