Ubuntu下Apache某虚拟机反向代理的一个应用

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

至于正向代理,与反向代理相反。

—————————————————->>

某台服务器上安装了Apache WEB服ServerName务,用来运行PHP程序,当有时候可能会因某种需要,可能会安装Tomcat服务,用来运行JSP程序,二者服务开启的http端口必然不同,默认情况下是:Apahce为80,Tomcat为8080,在本地开发的时候,要访问Apache的服务,只需在地址栏里输入虚拟机里设定的 ServerName 名称,既可访问该WEB应用,Tomcat下的服务则需要添加对应的端口号进行访问。

那么有没有一种可能就是,我在地址栏里直接输入某个domain也能访问Tomcat下的WEB应用呢?使用Apache的反向代理便可轻松解决。

一. 开启Apahce下的代理模块

ubuntu下一个比较傻瓜的方法就是在终端运行一下这个命令:sudo a2enmod proxy proxy_http (其他方法参照网络)

二. 修改Apache虚拟机配置文件

 #testproxy.cn(请添加此至hosts文件) 2011年10月26日 by CrossYou
 
       ServerName testproxy.cn
   
       
       #Reverse Proxy(反向代理)
       ProxyRequests Off
       ProxyVia On
  
      
      #注意Deny,Allow之间不要有空格  
      Order Deny,Allow  
      Deny from all
      Allow from all
      
  
      #配置跟代理,必需放在最后面,否则其他二级访问的反向代理会失败 下面要成对出现
      ProxyPass           / http://127.0.0.1:8080/
      ProxyPassReverse    / http://127.0.0.1:8080/
      #若此处项目名称 /demo/ 代理为 / 跟目录访问,session会丢失,需要配置如下信息  
      #ProxyPassReverseCookiePath /demo/
      
  

三. 重启Apache,在浏览器地址栏中输入testproxy.cn,即可访问http://127.0.0.1:8080/下面的JSP应用了

如果你想让其他人,也能通过testproxy.cn访问http://127.0.0.1:8080/下面的JSP应用,则就需要用到正向代理了

——《全文完》——

这篇文章目前没有评论

Leave a Reply

(必填项)

(必填项)

(可选)