蒙面人生蒙面人生

htaccess 二级域名绑定二级目录的问题

域名举例:abcde.com
------------------------------------------

操作一:addon domain 添加一级域名
domain:abcder.com
dir:abcde
pw:随意

操作二:addon domain 添加二级域名
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.com redirect到 /public_html/abcde/empty/
访问 http://www.abcde.com redirect到 /public_html/abcde/www/
访问 http://bbs.abcde.com redirect到 /public_html/abcde/bbs/

这样操作,使得一个域名对应一个目录,二级域名对应二级目录。
我们便可以方便的管理域名与目录结构了。
------------------------------------------

实现方法:
编写.htaccess,上传至网站根目录。
这里我说的网站根目录,大家很容易混淆。
网站,指的是 abcde.com 名下的网站,根目录是指 /public_html/abcde/

具体操作:
1、建立.htaccess。我们在WIN下无法建立以“.”开头的文件,我们可以上传后,在服务器端修改。
2、代码:

XML/HTML代码
  1. RewriteEngine on   
  2.   
  3. DirectoryIndex index.html index.htm index.php index.cgi   
  4.   
  5. # 访问 http://abcde.com redirect到 /public_html/abcde/empty/   
  6. RewriteCond %{HTTP_HOST} ^abcde.com$   
  7. RewriteCond %{REQUEST_URI} !^/empty/   
  8. RewriteCond %{REQUEST_FILENAME} !-f   
  9. RewriteCond %{REQUEST_FILENAME} !-d   
  10. RewriteRule ^(.*)$ /empty/$1   
  11. RewriteCond %{HTTP_HOST} ^abcde.com$   
  12. RewriteRule ^(/)?$ empty/index.php [L]   
  13.   
  14. # 访问 http://www.abcde.com redirect到 /public_html/abcde/www/   
  15. RewriteCond %{HTTP_HOST} ^www.abcde.com$   
  16. RewriteCond %{REQUEST_URI} !^/www/   
  17. RewriteCond %{REQUEST_FILENAME} !-f   
  18. RewriteCond %{REQUEST_FILENAME} !-d   
  19. RewriteRule ^(.*)$ /www/$1   
  20. RewriteCond %{HTTP_HOST} ^www.abcde.com$   
  21. RewriteRule ^(/)?$ www/index.php [L]   
  22.   
  23. # 访问 http://bbs.abcde.com redirect到 /public_html/abcde/bbs/   
  24. RewriteCond %{HTTP_HOST} ^bbs.abcde.com$   
  25. RewriteCond %{REQUEST_URI} !^/bbs/   
  26. RewriteCond %{REQUEST_FILENAME} !-f   
  27. RewriteCond %{REQUEST_FILENAME} !-d   
  28. RewriteRule ^(.*)$ /bbs/$1   
  29. RewriteCond %{HTTP_HOST} ^bbs.abcde.com$   
  30. RewriteRule ^(/)?$ bbs/index.php [L]  

值得注意的几点
1、网站配置一定记得修改,例如DZ的安装路径等。有些网站的路径在后台可修改,但有的需要修改配置文件,例如DZ!
2、域名前的“^”千万不能丢。
3、每个redirect,第一句和倒数第二句,虽然一样,但功能不一样,不要删,也不要调整位置。
多余的我也不解释了,照着做就行了。如果想知道原理的话,去查下301 302吧!
就到这里,谢谢了!

本原创文章未经允许不得转载 | 当前页面:蒙面人生 » htaccess 二级域名绑定二级目录的问题

评论