http://www.discuz.net/viewthread.php?tid=1417715
演示网站:http://edu.vhedu.com/
首先要做好泛域名解析,后台启用二级域名功能,这个官方有介绍,我就不细讲了,下面分iis和apache两种环境说明:
我这里主要采用REWRITE重写二级域名的方法实现二级域名直接显示而不跳转
就是把http://www.vhedu.com/space.php?domain=litao静态为http://litao.vhedu.com/
一、IIS环境下的配置
在httpd.ini文件的 RewriteEngine On 之后添加
RewriteCond Host: (?!\.|bbs|shop)([a-z0-9]+)\.vhedu\.com
RewriteRule ^/ /space\.php\?domain=$1$2 [I,L]
二、apache环境下的配置
在httpd.conf文件的RewriteEngine On 之后添加
RewriteCond %{HTTP_HOST} (?!bbs|shop)^[a-z0-9\-]+\.vhedu\.com$
RewriteRule ^/?$ /%{HTTP_HOST}
RewriteRule ^/([a-z0-9\-]+)\.vhedu\.com/?$ /space\.php\?domain=$1 [L]
注意:\.vhedu\.com是指你的域名,需要自己修改,前面的(bbs|shop)中的bbs与shop是你保留的域名,可以多填写几个。
三、打开uchome根目录下的index.php文件
找到下面的代码注释掉或者删除即可
//二级域名
if(!isset($_GET[‘do’]) && $_SCONFIG[‘allowdomain’]) {
$hostarr = explode(‘.’, $_SERVER[‘HTTP_HOST’]);
$domainrootarr = explode(‘.’, $_SCONFIG[‘domainroot’]);
if(count($hostarr) > 2 && count($hostarr) > count($domainrootarr) && $hostarr[0] != ‘www’ && !isholddomain($hostarr[0])) {
showmessage(‘enter_the_space’, $_SCONFIG[‘siteallurl’].’space.php?domain=’.$hostarr[0], 0);
}
}
修改完毕!
最后体验一下您的个性域名吧!
说明:以上修改主要是针对独立主机而言,IIS虚拟主机暂时没有测试,apache的虚拟主机修改.htaccess应该也可以实现,欢迎各位站长参与测试!