日期:2014-05-16  浏览次数:20889 次

Apache+泛域名解析详解教程

首先说说题外话吧,如果你对域名解析非常了解,此段内容可以跳过。最简单的,假设你想要把www.yfang.cn指向某个ip,只需要在你的管理界面里添加一条A记录,主机名写www,指向你的服务器ip就好了。

假设你有一个域名,叫做yfang.cn,你自然能够控制这个域名的DNS指向咯。通常这是通过你注册域名的网站实现的。


经过一段时间的域名扩散,你自己的DNS服务器里能正确找到www.yfang.cn的指向了(ping www.yfang.cn即可),那么第一步试验就完成了。

接下来复杂一点的,很多朋友想做到凡域名解析以实现自动控制,举个例子,就像著名的msn space,它的域名是怎么写的呢?

早些时候的连接是形如 http://spaces.msn.com/members/yfang 目前的样子通常是形如http://yfang.spaces.live.com/ 的一个域名,其中最前面一段是你的用户名,看上去爽多了吧。首先你能想像得出把10的n次方个帐户挨个添加A记录是劳民伤财的二智操作,DNS配A记录的时候就提供泛域名解析这个功能,大概意思就是说所有*.spaces.live.com都指向一个ip,添加方法就是添加一条A记录,*作为主机名。好了,关于DNS方面的设置就讲到这里,下面说一下Apache里如何正确配置虚拟主机。

其实这一个部分也很简单,不过耽误了我几十分钟试验,这里写下来希望对别人有帮助。

这里假设你架了一个apache站点,里面有无数的虚拟主机,每个虚拟主机都通过80端口访问,仅通过ServerName区别。假设你自己弄了一个blog,希望做到类似msn space的效果,即通过id1.yfang.cn, id2.yfang.cn, Id3.yfang.cn分别访问,那么你只需要建这样一个虚拟主机

<VirtualHost *>

??????? ServerName yfang.cn

??????? ServerAlias *.yfang.cn

??????? ServerAdmin yangfang@fudan.edu.cn

??????? DocumentRoot /var/www/yfang.cn/htdocs

??????? ErrorLog /var/www/yfang.cn/logs/error_log

??????? CustomLog /var/www/yfang.cn/logs/access_logs combined

</VirtualHost>

重启apache,测试一下

这样就可以随便访问一个abc.yfang.cn,看看是不是到了/var/www/yfang.cn/htdocs下的内容了?!

如果顺利的话,那么恭喜你,很重要的一步你成功了。

接下来是很多类似结构网站的配制方法,也就是把对abc.yfang.cn的访问指到真正正确的地方,通常这需要一步rewrite操作,具体要看你的目录结构

方案一:你在/var/www/yfang.cn/htdocs下为每个id建一个同名目录,然后rewrite的时候把abc.yfang.cn/ 转发给yfang.cn/abc/即可方案二:你在/var/www/yfang.cn/htdocs下为每个id建一个同名目录,然后rewrite的时候把abc.yfang.cn/ 转发给 /abc/即可

这两种方案功能一样,原理不同,自己理解一下就好了。

到这里apache配置泛域名解析就结束了,从此王子和公主过着幸福快乐的生活。

?

多种防伪标志的金士顿4GDTG2U盘
49.0元

?