首先,您的拥有一个有泛域名解析的顶级域名,例如: domain.com
其次,在 httpd.conf 中打开 mod_rewrite
之后,在 httpd.conf 的最后,添加以下内容:
- RewriteEngine on
- RewriteMap lowercase int:tolower
- RewriteMap vhost txt:/usr/local/etc/apache/vhost.map
- RewriteCond ${lowercase:{SERVER_NAME}} ^(.+)$
- RewriteCond ${vhost:1} ^(/.)$
- RewriteRule ^/(.)$ 1/$1
然后,在这个所在路径的目录下创建一个文档: vhost.map
内容为:
- www.domain.com /usr/local/www/data-dist/domain
- bbs.domain.com /usr/local/www/data-dist/bbs
- anyname.domain.com /usr/local/www/data-dist/anyname
以上部分都是:” 域名+空格+绝对路径” 的形式。
最后,在您的网站根目录 /usr/local/www/data-dist 下,创建对应目录:
domain , bbs , anyname 等等,理论上能够无限。
这样,通过浏览器,访问 www.domain.com 时,实际上访问的就是 /usr/local/www/data-dist/domain目录下的文档。同理,访问bbs.domain.com 实际上访问的就是 /usr/local/www/data-dist/bbs 目录下的文档。而且,您能够随时更改 vhost.map 来增加、删除、修改您的二级域名和所指向的实际路径,不用重启 apache。
本文来自: Apache服务器二级域名的完美实现
本页面链接地址(或者引用地址 Trackback)

# 2010年03月19日 星期五 21:23
可以在本地实现么?
# 2010年12月14日 星期二 15:21
@吴旭东, 可以在本地实现的