二级域名跳转到对应目录

 

一、问题:
  今天一个朋友让帮助写一个二级域名跳转功能需求是他有一个站,做了很多的二级无名解析,但是所以的二级域名是在一个站点上(其实就是网站下的二级目录),他又不想在IIS里建立上百个这个的二级站点,所以想实现这样的效果访问二级域名时自动转换到应该的二级目录下。就是用户访问:
http://news.chongwen.com 时自动的转换到 http://www.chongwen.com/news/
http://book.chongwen.com 时自动的转换到 http://www.chongwen.com/book/

二、分析:
  其实要现实这个功能很简单,获取二级域名的,取出二级的前缀,然后跳转到相应的目录,可能这样现在得有两个前提:
  1、要把域名做泛解析到一个服务器上;
  2、建立的目录名要与二级域名前缀一致,不然跳转后访问不到实际的目录;

三、实现:
  下面是用PHP实现的代码:
$host = $_SERVER['HTTP_HOST'];
$prefix = substr($host, 0, strpos($host, '.'));
if ('wwww' == $prefix) {
    Header("Location: http://www.chongwen.com/index.html");
} else {
    Header("Location: http://www.chongwen.com/{$prefix}");
}
?>

四、总结:
  个人觉得朋友的这种解析方式不太好,虽然可以应付一时的麻烦,但这种方案会给以后留隐患。
  第一、用二级域名来规则整个站点分布带来好处,以后分流服务器时方便转移;
    第二、二级无名划分更方便网站的发展与管理。

你可能感兴趣的:(PHP技术)