LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 648|回复: 1

apache反向代理的配置

[复制链接]
发表于 2005-3-8 11:02:19 | 显示全部楼层 |阅读模式
最近一直在对单位的网络结构进行调整,主要的改变是增添了一台网关(兼做防火墙),另外原来的web、mail、ftp服务器是直接暴露在公网上,现在我把web、mail、ftp服务器放到内网,通过在网关上进行代理使得内网和外网都能访问。
具体的网络结构如下:
网关 &os采用freebsd410 &ip地址218.4.xxx.xxx(此为公网地址) ip地址192.168.1.1(此为内网地址)
内部服务器 & web &os采用freebsd410 &ip地址192.168.1.2
& & & & & & & & & &mail &os采用freebsd410 &ip地址192.168.1.3
& & & & & & & & & &ftp & &os采用freebsd410 &ip地址192.168.1.4
要完成的目标:在网关上采用apache的反向代理使得外网对218.4.xxx.xxx的各种访问能具体的转向到内部的各个服务器上(其中218.4.xxx.xxx和域名的泛域名已经由电信绑定)
实现方法:
1、编译apache增加代理模块的支持(使用apache1.3.29版本)
./configure  --prefix=/usr/local/apache     #设置安装默认目录
                  --enable-module=most      #编译大多数模块
                  --enable-shared=max   #设置模块为DSO(动态共享对象)模式
                  --enable-module=proxy     #启动代理模块
                  --enable-shared=proxy      #安装代理模块为DSO模式
                  --enable-module=rewrite     #启动重写功能模块
                  --enable-shared=rewrite安装重写功能模块为DSO模式
2、在218.4.xxx.xxx上安装apache,对httpd.conf进行配置
<NameVirtualHost 218.4.xxx.xxx>
<VirtualHost 218.4.xxx.xxx>
servername www.abc.com
rewriteengine On
proxyrequests off
usecanonicalname off
rewriterule ^/(.*)$http://192.168.1.2$ 1 [P,L]
</VirtualHost>
<VirtualHost 218.4.xxx.xxx>
servername mail.abc.com
rewriteengine On
proxyrequests off
usecanonicalname off
rewriterule ^/(.*)$http://192.168.1.3$ 1 [P,L]
</VirtualHost>
<VirtualHost 218.4.xxx.xxx>
servername ftp.abc.com
rewriteengine On
proxyrequests off
usecanonicalname off
rewriterule ^/(.*)$http://192.168.1.4$ 1 [P,L]
</VirtualHost>
3、添加记录进入/etc/hosts文件
192.168.1.2 www.abc.com
192.168.1.3 mail.abc.com
192.168.1.4 ftp.abc.com
具体步骤就是上面的这些,但是在实际的运用中出现了很多的问题,没有达到我所想要的结果:
apache不能启动,说是rewriteengine On、proxyrequests off、usecanonicalname off出现错误。
至此。本次apache反向代理宣告失败,在网上看了很多文章,也还是不得期门而入,不知道各位大大能否指点一二。
谢谢各位!
发表于 2005-3-8 18:04:33 | 显示全部楼层
我觉得你没有必要使用内网地址。里面的两台机器如果用空余IP就给它们分配公网的。这样做一个防火墙就可以了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表