天缘博客

日薄风骤艳阳曾,月明今夜诵三经,天缘路上多风雨,地北天南亦有情。

如何为Apache绑定多IP多域名

相比上一篇IIS上绑定多IP多域名,在Apache服务器上绑定方法要简单些,主要因为Apache是个开源独立的服务器软件,而且支持跨平台安装和配置,支持丰富的API扩展,所以很多人对Apache的好感要甚于IIS,Apache的优点就不用多说了,还是来看看如何为Apache配置多IP和多域名,天缘在上篇文章中说过,多IP和多域名绑定问题有很多种方法,所以本文仍然只介绍常规的绑定方法,即通过修改httpd.conf文件来绑定IP地址和域名。

HTTPD配置文件说明:Apache服务器httpd.conf配置文件说明

注意:

  • 无论Windows主机还是Linux主机,在Apache接收处理前,首要要确保这些IP地址已经映射到APACHE服务上,也就是说,对要首先保证操作系统本身接受这些IP地址访问,Windows绑定多IP参考前一篇文章(如何为Windows绑定多个IP和多个域名 ),Linux绑定多IP地址先自行搜索解决,以后再补充。
  • 测试之前,确保域名已经解析到本服务器上且已生效。
  • 本文默认按照80端口配置,还可以通过同IP但不同端口来区分不同网站,该情况一般是用在主机管理上。举个例子:可以使用http://192.168.1.100作为正常网址,而http://192.168.1.100:2020则可以用来做后台配置管理等。
  • 绑定方法有很多种,比如虚拟绑定、单IP多域名绑定、多IP单域名绑定、多IP多域名绑定、端口识别绑定等等,而且每种绑定可能还有不同的实现方法,根据自己习惯和场合选择使用。

一、Apache绑定单IP多域名

1、示例绑定:

  • IP地址192.168.1.100
  • 对应两个域名http://metsky.com和http://bbs.metsky.com(二级域名)

2、绑定过程

a、打开http.conf,该文件位置在apache/conf下面,直接用文本编辑器即可打开。
b、添加以下字段,位置靠近ServerName 127.0.0.1或ServerName localhost:80下面附近,方便修改和理解。

<VirtualHost 192.168.1.100>
DocumentRoot D:/xampp/htdocs/metsky.com
ServerName metsky.com
</VirtualHost>
<VirtualHost 192.168.1.100>
DocumentRoot D:/xampp/htdocs/metsky.com/bbs
ServerName bbs.metsky.com
</VirtualHost>

这个方法是对指定IP地址的主机比较适合,但是如果是动态获取IP地址的主机就有问题了,则可以把<VirtualHost 192.168.1.100>统一修改为<VirtualHost *:80>,这样设置后APACHE不再对IP区分,只根据ServerName和处理优先级识别。比如很多虚拟主机要求使用CNAME解析域名,那么该虚拟主机的IP可能会变化的,就无法使用上面的配置方法,还是<VirtualHost *:80>要更好用一些。

补充一下,如果是Linux主机,DocumentRoot字段需要修改为类似:

usr/local/www/metsky.com/

usr/local/www/metsky.com/bbs

这样的路径,该路径指向网站所在根目录或子目录。

c、此外还可以为每个域名指定单独的错误日志(ErrorLog)及用户日志地址(CustomLog)只需要把下面两句添加到上述<VirtualHost ...></VirtualHos>字段之间即可,示例如下(具体存储地址可根据实际情况修改掉):

ErrorLog "logs/error.log"

CustomLog "logs/access.log" combined

d、重启Apache服务即可生效。

二、Apache绑定多IP多域名

1、示例绑定

  • IP地址192.168.1.100/192.168.1.101
  • 对应两个域名http://metsky.com和http://abc.com

2、绑定过程

步骤同上文,还是打开httpd.conf,然后增加下面脚本。

<VirtualHost 192.168.1.100>
DocumentRoot D:/xampp/htdocs/metsky.com
ServerName metsky.com
</VirtualHost>
<VirtualHost 192.168.1.101>
DocumentRoot D:/xampp/htdocs/abc.com
ServerName abc.com
</VirtualHost>

这样就是两个IP地址对应两个域名。实际上在上面的单IP地址绑定中,提到<VirtualHost *:80>这样的设置方式也可以用来多IP访问,只是只能使用ServerName来区分,而如果输入对应的IP地址来访问,APACHE只会显示符合第一个优先级网站(假设无端口区分条件下),因为它无法判断IP地址与多域名之间的映射关系,所以使用明确的IP地址配置还是有点好处,支持直接输入IP地址访问,只是看起来不太好。

3、如何禁止Aache输入IP地址访问

要想禁止直接输入IP地址访问网站,只需再增加这么一段(其它IP类似处理):

<VirtualHost 192.168.1.100>
DocumentRoot D:/xampp/htdocs/forbidden
ServerName 192.168.1.100
</VirtualHost>

如果要禁止某个IP段直接输入IP访问,可以使用通配符,比如192.168.1.*或192.*或*,比如:

<VirtualHost 192.168.1.*>
DocumentRoot D:/xampp/htdocs/forbidden
ServerName 192.168.1.*
</VirtualHost>

其中forbidden是禁止访问目录,可以放一个包含提示信息的文件,比如index.html等。

天缘网友 [提高]: 2010-11-12 04:06:01 发表
非常好的教程
天缘网友 [HELLO]: 2010-11-12 04:05:50 发表
感谢天缘,谢谢分享
天缘网友 [东东导购]: 2010-11-11 02:06:35 发表
现在用Apache的确很多,好好学习一下!
天缘网友 [国画]: 2010-11-09 02:21:42 发表
学习 试试
天缘网友 [胶粉]: 2010-10-22 06:33:16 发表
被百度K站了,辛苦做外链在,争取早点出小黑屋!~
天缘网友 [鱼越]: 2010-10-21 03:10:28 发表
没有文化真是可怕啊
天缘网友 [wghk]: 2010-10-01 07:27:48 发表
受益了
天缘网友 [最好的点读机]: 2010-09-26 20:32:30 发表
这个问题正是我要找的
天缘网友 [东山小黄]: 2010-08-24 10:43:48 发表
很不错的,我一般只上了一个站,这次学校了把服务器设置下!
天缘网友 [学夫子]: 2010-08-22 16:53:32 发表
最好搞个自己的独立IP,那样最好
天缘网友 [艾想]: 2010-08-21 09:29:57 发表
学习Apache中,受益匪浅
天缘网友 [su]: 2010-08-16 22:55:27 发表
呵呵 来看看了啊 点点AD啊
天缘网友 [天缘]: 2010-08-16 21:00:34 发表
@绝版黑色:虚拟机还是比较实惠,够用即可。
@真好:VPS自己算便折腾,使用起来比独立服务器还要方便。
天缘网友 [施华洛]: 2010-08-16 20:10:39 发表
这么强大 哈哈
天缘网友 [真好]: 2010-08-16 19:38:15 发表
好教程,不过我现在用的是lighttpd ,据说Apache会占用内存些,我的VPS本来内存就比较小。
天缘网友 [可乐]: 2010-08-16 19:15:29 发表
技术阿~学习了~
天缘网友 [绝版黑色]: 2010-08-16 14:41:20 发表
我用的虚拟主机.
天缘网友 [天缘]: 2010-08-16 13:45:30 发表
@人好哇:那你看来对LINUX用的比较多。
@绝版黑色:多为环保事业做点贡献更重要,少用点一次性饭盒、筷子就可以了。
@日光博客:下次买个看看。
@皓哥:虚拟机也可能是LINUX的。
天缘网友 [老张]: 2010-08-16 09:07:31 发表
还没有自己的的服务器呢,暂时用不着哟。
天缘网友 [皓哥]: 2010-08-16 07:54:09 发表
LINUX没整过,不会玩呀,只能玩玩虚拟机了...
天缘网友 [日光博客]: 2010-08-15 22:58:52 发表
再发布一篇关于巴斯vps上面建立多个站点的教程
天缘网友 [WY]: 2010-08-15 20:44:11 发表
这个比较适合VPS用
天缘网友 [绝版黑色]: 2010-08-15 15:21:11 发表
每天转来一圈.
邀请你参加:我爱分享 为灾区人民送祝福活动.
天缘网友 [人好哇]: 2010-08-15 14:28:28 发表
这种教程现在来说很有必要呢。用Apache的人越来越多了。国外主机大部分都是Linux的~不过我已经对Linux轻车熟路了……orz

发表评论:

◎欢迎参与讨论,所有评论皆需审核,非法及及未经许可的广告信息不是勤劳致富的法宝,请勿发表。

订阅博客

最近发表

标签云

快速通道

本站采用创作共用版权协议, 要求署名、非商业用途和保持一致. 转载也必须遵循“署名-非商业用途-保持一致”的创作共用协议. 返回顶部
Copyright@2005-2011 Metsky.com, All rights Reserved.