用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 相关文章推荐
小文件php+SQLite存储方案
Sep 04 PHP
用PHP的超级变量$_POST获取HTML表单(HTML Form) 数据
May 07 PHP
php curl常见错误:SSL错误、bool(false)
Dec 28 PHP
在yii中新增一个用户验证的方法详解
Jun 20 PHP
destoon调用自定义模板及样式的公告栏
Jun 21 PHP
PHP Session机制简介及用法
Aug 19 PHP
PHP_SELF,SCRIPT_NAME,REQUEST_URI区别
Dec 24 PHP
PHP XML和数组互相转换详解
Oct 26 PHP
php set_include_path函数设置 include_path 配置选项
Oct 30 PHP
Yii2 队列 shmilyzxt/yii2-queue 简单概述
Aug 02 PHP
对于Laravel 5.5核心架构的深入理解
Feb 22 PHP
基于PHP实现用户登录注册功能的详细教程
Aug 04 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
PHP5中的时间相差8小时的解决办法
2008/03/28 PHP
一个PHP缓存类代码(附详细说明)
2011/06/09 PHP
thinkPHP实现的省市区三级联动功能示例
2017/05/05 PHP
win10下 php安装seaslog扩展的详细步骤
2020/12/04 PHP
JS实现两个大数(整数)相乘
2014/04/28 Javascript
javascript中关于&& 和 || 表达式的小技巧分享
2015/04/10 Javascript
jQuery焦点图切换特效代码分享
2015/09/15 Javascript
浅谈vue+webpack项目调试方法步骤
2017/09/11 Javascript
Node.js+jade抓取博客所有文章生成静态html文件的实例
2017/09/19 Javascript
JavaScript设计模式之建造者模式实例教程
2018/07/02 Javascript
微信小程序实现拍照画布指定区域生成图片
2019/07/18 Javascript
jQuery操作事件完整实例分析
2020/01/10 jQuery
简单介绍Python中的RSS处理
2015/04/13 Python
简要讲解Python编程中线程的创建与锁的使用
2016/02/28 Python
举例讲解Python中的list列表数据结构用法
2016/03/12 Python
Python面向对象类继承和组合实例分析
2018/05/28 Python
python2 与 pyhton3的输入语句写法小结
2018/09/10 Python
python 搭建简单的http server,可直接post文件的实例
2019/01/03 Python
python实现扫描ip地址的小程序
2019/04/16 Python
Django错误:TypeError at / 'bool' object is not callable解决
2019/08/16 Python
Python3标准库之dbm UNIX键-值数据库问题
2020/03/24 Python
从一次项目重构说起CSS3自定义变量在项目的使用方法
2021/03/01 HTML / CSS
详解HTML5中垂直上下居中的解决方案
2017/12/20 HTML / CSS
英国创新设计文具、卡片和礼品包装网站:Paperchase
2018/07/14 全球购物
加拿大领先家居家具网上购物:Aosom.ca
2020/05/27 全球购物
会展策划与管理专业大学生职业生涯规划
2014/02/07 职场文书
消防工作实施方案
2014/06/09 职场文书
2014年预备党员群众路线教育实践活动对照检查材料思想汇报
2014/10/02 职场文书
2014年库房工作总结
2014/11/26 职场文书
丽江古城导游词
2015/02/03 职场文书
督导岗位职责范本
2015/04/10 职场文书
员工加薪申请报告
2015/05/15 职场文书
学法用法心得体会(2016推荐篇)
2016/01/21 职场文书
asyncio异步编程之Task对象详解
2022/03/13 Python
Netflix《海贼王》真人版剧集多张片场照曝光
2022/04/04 日漫
win10滚动条自动往上跑怎么办?win10滚动条自动往上跑的解决方法
2022/08/05 数码科技