用Apache反向代理设置对外的WWW和文件服务器


Posted in PHP onOctober 09, 2006

简介:一台机器用专线接入Internet作为防火墙,在内部网段上有一台WWW服务器 
(Redhat 6.1,Apache 1.3.9)希望这台机器能对外提供WWW服务器和基于apache 
的文件服务。供外部世界公共访问WWW服务器,或者外地分公司下载需要的文件。 
优点: 内部的WWW服务器和文件服务完全与外部世界隔开,不直接连接到外部,通过 
防火墙上运行的Apache服务提供对内部的代理访问,增强了安全性,同时在 
防火墙上运行的Apache服务运用基于名字的虚拟主机技术,使得防火墙上的 
主页不会被访问到。符合了作为防火墙要求运行服务越少越安全的准则。 

实现方法:在内部网段上的Apache服务器(192.168.11.2)存放的是公司主页,供内部 
和外部用户公共访问,并设置/home/ftp/pub目录为文件存放区域,用 
http://download.yourdomain.com/pub/来访问。 
在防火墙上设置apache反向代理技术,由防火墙代理对内部网段上的访问。 

步骤: 
一. 内部网段上的Apache服务器设置 

apache采用默认配置。主目录为/home/httpd/html,主机域名为 sun.yourdomain.com, 
且别名www.yourdomain.com, 并且设置srm.conf加一行别名定义如下: 
Alias /pub /home/ftp/pub/ 

且更改默认应用程序类型定义如下: 
DefaultType application/octet-stream 

最后在/etc/httpd/conf/access.conf中增加一项定义 

Options Indexes 
AllowOverride AuthConfig 
order allow,deny 
allow from all 

注:Options Indexes允许在找不到index.html文件的情况下允许列出目录/文件列表。 
AllowOverride AuthConfig允许做基本的用户名和口令验证。 
这样的话,你需要在/home/ftp/pub目录下放入.htaccess,内容如下: 
------- 
[root@shopu pub]# more .htaccess 
AuthName Branch Office Public Software Download Area 
AuthType Basic 
AuthUserFile /etc/.usrpasswd 
require valid-user 
------ 
然后用#htpasswd -c /etc/.usrpasswd user1 
分别创建不同的允许访问/pub下文件服务的外部用户名和口令。 

二. 防火墙上反向代理配置: 
加下面的行到/etc/httpd/conf/httpd.conf 

NameVirtualHost 1.2.3.4 

# 1.2.3.4是防火墙外部网卡的互联网上永久IP地址 

servername www.yourdomain.com 
errorlog /var/log/httpd/error_log 
transferlog /var/log/httpd/access_log 
rewriteengine on 
proxyrequests off 
usecanonicalname off 
rewriterule ^/(.*)$ http://192.168.11.2/$1 [P,L] 

servername download.yourdomain.com 
errorlog /var/log/httpd/download/error_log 
transferlog /var/log/httpd/download/access_log 
rewriteengine on 
proxyrequests off 
usecanonicalname off 
rewriterule ^/(.*)$ http://192.168.11.2/$1 [P,L] 

注:设置防火墙上的DNS,让download.yourdomain.comwww.yourdomain.com都指向 
防火墙的外部网卡地址。www.yourdomain.com防问你的公司主页, 用 
http://download.yourdomain.com/pub/...?参募?略厍??/a> 

你需要在内部网段的apache主机上建立目录/var/log/httpd/download/目录,否则会 
出错。另外,你也可以设置防火墙主机上的/home/httpd/html/index.html的属性为 
750

PHP 相关文章推荐
BBS(php & mysql)完整版(一)
Oct 09 PHP
smarty 原来也不过如此~~呵呵
Nov 25 PHP
php 静态变量与自定义常量的使用方法
Jan 26 PHP
PHP fgetcsv 定义和用法(附windows与linux下兼容问题)
May 29 PHP
PHP实现今天是星期几的几种写法
Sep 26 PHP
分享下页面关键字抓取components.arrow.com站点代码
Jan 30 PHP
使用GD库生成带阴影文字的图片
Mar 27 PHP
php实现读取和写入tab分割的文件
Jun 01 PHP
PHP实现更改hosts文件的方法示例
Aug 08 PHP
PHP CURL与java http使用方法详解
Jan 26 PHP
PHP中Session ID的实现原理实例分析
Aug 17 PHP
php中加密解密DES类的简单使用方法示例
Mar 26 PHP
Mysql的常用命令
Oct 09 #PHP
提升PHP执行速度全攻略
Oct 09 #PHP
Apache设置虚拟WEB
Oct 09 #PHP
PHP&MYSQL服务器配置说明
Oct 09 #PHP
国内php原创论坛
Oct 09 #PHP
强烈推荐:php.ini中文版(2)
Oct 09 #PHP
强烈推荐:php.ini中文版(1)
Oct 09 #PHP
You might like
探讨file_get_contents与curl效率及稳定性的分析
2013/06/06 PHP
PHP的基本常识小结
2013/07/05 PHP
基于PHP的简单采集数据入库程序
2014/07/30 PHP
php json转换成数组形式代码分享
2014/11/10 PHP
php实现网站顶踩功能的完整前端代码
2015/07/19 PHP
基于jquery实现的服务器验证控件的启用和禁用代码
2010/04/27 Javascript
最佳JS代码编写的14条技巧
2011/01/09 Javascript
Js 时间函数getYear()的使用问题探讨
2013/04/01 Javascript
JS获取单击按钮单元格所在行的信息
2014/06/17 Javascript
javascript实现无限级select联动菜单
2015/01/02 Javascript
JavaScript日期类型的一些用法介绍
2015/03/02 Javascript
使用Meteor配合Node.js编写实时聊天应用的范例
2015/06/23 Javascript
再JavaScript的jQuery库中编写动画效果的指南
2015/08/13 Javascript
JS实现超精简响应鼠标显示二级菜单代码
2015/09/12 Javascript
分享JavaScript与Java中MD5使用两个例子
2015/12/23 Javascript
深入理解jquery自定义动画animate()
2016/05/24 Javascript
BootStrap中Tab页签切换实例代码
2016/05/30 Javascript
angular+bootstrap的双向数据绑定实例
2017/03/03 Javascript
jQuery获取table表中的td标签(实例讲解)
2017/07/28 jQuery
javascript实现简单搜索功能
2020/03/26 Javascript
Vue循环中多个input绑定指定v-model实例
2020/08/31 Javascript
python备份文件的脚本
2008/08/11 Python
Python2.x和3.x下maketrans与translate函数使用上的不同
2015/04/13 Python
浅谈配置OpenCV3 + Python3的简易方法(macOS)
2018/04/02 Python
Python使用gRPC传输协议教程
2018/10/16 Python
用Python逐行分析文件方法
2019/01/28 Python
Python整数对象实现原理详解
2019/07/01 Python
python下载库的步骤方法
2019/10/12 Python
Python3之外部文件调用Django程序操作model等文件实现方式
2020/04/07 Python
Python绘图实现台风路径可视化代码实例
2020/10/23 Python
python跨文件使用全局变量的实现
2020/11/17 Python
SpringBoot首页设置解析(推荐)
2021/02/11 Python
Expedia意大利旅游网站:酒店、机票和租车预订
2017/10/30 全球购物
人事档案接收函
2014/01/12 职场文书
2014年售后服务工作总结
2014/11/18 职场文书
岗位聘任报告
2015/03/02 职场文书