htaccess 完美解决 二级域名绑定二级目录的问题
域名举例:abcde.com
------------------------------------------
操作一:addondomain添加一级域名
domain:abcder.com
dir:abcde
pw:随意
操作二:addondomain添加二级域名
domain:bbs.abcder.com
dir:abcde(目录与一级域名的映射目录相同)
pw:随意
这样,我们访问
http://abcde.com
http://www.abcde.com/
http://bbs.abcde.com
都会指向/public_html/abcde目录
------------------------------------------
建立目录结构:
/public_html/abcde/empty/
/public_html/abcde/www/
/public_html/abcde/bbs/
------------------------------------------
目的:
访问http://abcde.comredirect到/public_html/abcde/empty/
访问http://www.abcde.comredirect到/public_html/abcde/www/
访问http://bbs.abcde.comredirect到/public_html/abcde/bbs/
这样操作,使得一个域名对应一个目录,二级域名对应二级目录。
我们便可以方便的管理域名与目录结构了。
------------------------------------------
实现方法:
编写.htaccess,上传至网站根目录。
这里我说的网站根目录,大家很容易混淆。
网站,指的是abcde.com名下的网站,根目录是指/public_html/abcde/
具体操作:
1、建立.htaccess。我们在WIN下无法建立以“.”开头的文件,我们可以上传后,在服务器端修改。
2、代码:
------------------------------------------
代码:
------------------------------------------
RewriteEngineon
DirectoryIndexindex.htmlindex.htmindex.phpindex.cgi
#访问http://abcde.comredirect到/public_html/abcde/empty/
RewriteCond%{HTTP_HOST}^abcde.com$
RewriteCond%{REQUEST_URI}!^/empty/
RewriteCond%{REQUEST_FILENAME}!-f
RewriteCond%{REQUEST_FILENAME}!-d
RewriteRule^(.*)$/empty/$1
RewriteCond%{HTTP_HOST}^abcde.com$
RewriteRule^(/)?$empty/index.php[L]
#访问http://www.abcde.comredirect到/public_html/abcde/www/
RewriteCond%{HTTP_HOST}^www.abcde.com$
RewriteCond%{REQUEST_URI}!^/www/
RewriteCond%{REQUEST_FILENAME}!-f
RewriteCond%{REQUEST_FILENAME}!-d
RewriteRule^(.*)$/www/$1
RewriteCond%{HTTP_HOST}^www.abcde.com$
RewriteRule^(/)?$www/index.php[L]
#访问http://bbs.abcde.comredirect到/public_html/abcde/bbs/
RewriteCond%{HTTP_HOST}^bbs.abcde.com$
RewriteCond%{REQUEST_URI}!^/bbs/
RewriteCond%{REQUEST_FILENAME}!-f
RewriteCond%{REQUEST_FILENAME}!-d
RewriteRule^(.*)$/bbs/$1
RewriteCond%{HTTP_HOST}^bbs.abcde.com$
RewriteRule^(/)?$bbs/index.php[L]
------------------------------------------
值得注意的几点
1、网站配置一定记得修改,例如DZ的安装路径等。有些网站的路径在后台可修改,但有的需要修改配置文件,例如DZ!
2、域名前的“^”千万不能丢。
3、每个redirect,第一句和倒数第二句,虽然一样,但功能不一样,不要删,也不要调整位置。
多余的我也不解释了,照着做就行了。如果想知道原理的话,去查下301302吧!