manyin 发表于 2010-12-1 14:33:49

使用CI做泛域名解析

最的近开始使用CI,感觉还是不错的,不过网站业务要求使用泛域名,框架不太好支持,又不想再建一个网站目录,决定对CI进行一定的改造。
框架的route配置在app/config上下,系统是自动载入的,初步想法时,针对不同的域名载入不同的配置,载入配置在代码在system/libraries/route.php里面
_set_routing()里面有一行代码

@include(APPPATH.'config/routes'.EXE;);

对这里进行一定修改如下

               $routpath = APPPATH.'config/routes';
                $hosts = explode('.',$_SERVER['HTTP_HOST']);

                if(file_exists($routpath.'_'.$hosts.EXT))
                {
                        $routpath .= '_'.$hosts.EXT;
                }
                else
                {
                        $routpath .= EXT;
                }

                @include($routpath);
通过这样的修改,默认的配置文件config/route.php对应于泛域名的解析,所有指定域名的配置只需新建配置文件即可
例如www的域名文件即这config/route_www.php

snllll 发表于 2011-1-9 02:35:18

@include(APPPATH.'config/routes'.EXE;);

是不是有点小问题?

-------------------------
对应于泛域名的解析,所有指定域名的配置只需新建配置文件即可

这个如果有很多泛域名的话,手动新建可见恐怖了,干脆配置一个模板,如果规则默认的话,就加载模板,如果有细微区别的,则补充一个新规则。

avinmo 发表于 2011-1-30 18:50:29

非常好。刚好用得上了。 谢谢楼上两老。哈哈。

fanxuan 发表于 2011-2-8 11:40:06

很不错,如果能按照二楼的去修改,那就更完美了

davidx 发表于 2011-3-5 21:26:44

很不错。楼主真是高人

benfeng 发表于 2011-3-7 09:28:23

这东西太好了,谢谢分享


—— 发送自 迷人浏览器

savasun 发表于 2011-3-7 16:36:50

这东西太好了,谢谢分享

lh529 发表于 2013-4-19 09:23:33

记号,来学习

longjianghu 发表于 2013-6-1 09:59:48

我这边的做法是直接获取当前的二级域名,根据二级域名读取对应的数据。

smartweb 发表于 2013-6-1 16:35:23

:o:o:o:o:o:o:o:o:o
页: [1]
查看完整版本: 使用CI做泛域名解析