Apache+泛域名解析详解

 

首先说说题外话吧,如果你对域名解析非常了解,此段内容可以跳过。

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

最简单的,假设你想要把http://www.yfang.cn/指向某个ip,只需要在你的管理界面里添加一条A记录,主机名写www,指向你的服务器ip就好了。

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

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

早些时候的连接是形如 http://spaces.msn.com/members/yfang 目前的样子通常是形如http://yfang.spaces.live.com/ 的一个域名,其中最前面一段是你的用户名,看上去爽多了吧。首先你能想像得出把10n次方个帐户挨个添加A记录是劳民伤财的二智操作,DNSA记录的时候就提供泛域名解析这个功能,大概意思就是说所有*.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配置泛域名解析就结束了,从此王子和公主过着幸福快乐的生活。

 

(杨方 2007-8-3 http://www.yfang.cn/ 转载请注明出处)

4 Comments so far

  1. xuelange December 12th, 2007 10:05 am

    那xuelange.yfang.cn和lx.yfang.cn需要建两个目录,分别指向的?那很多个用户,那是不是也那么多目录?

  2. yang.fang December 13th, 2007 1:58 pm

    感谢您的关注,最简单的设计方式下,是多少个用户就多少个子目录的,这种想法也最直接简洁!我觉得每次创建新用户的时候,你做的只不过是用一个固定的脚本添加这个用户所需的目录,相关文件,rewrite可以用统一的匹配来做,这样你就不用重启apache了,效率也高得多。

  3. nihao December 16th, 2008 1:41 pm

    请问:rewrite操作 在哪里设置呢

  4. yang.fang December 17th, 2008 10:52 pm

    rewrite就是典型的apache配置,更多详细信息,可以参考 http://wiki.yfang.cn/resource/WebServer/Apache_2.2_CN/rewrite/rewrite_guide.html

posted on 2009-05-12 17:54  荞麦香  阅读(413)  评论(0)    收藏  举报

导航