用户
 找回密码
 入住 CI 中国社区
搜索
查看: 7394|回复: 9
收起左侧

[URL] 使用CI做泛域名解析

[复制链接]
发表于 2010-12-1 14:33:49 | 显示全部楼层 |阅读模式
最的近开始使用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[0].EXT))
                {
                        $routpath .= '_'.$hosts[0].EXT;
                }
                else
                {
                        $routpath .= EXT;
                }

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

评分

参与人数 2威望 +8 收起 理由
Hex + 4
jeongee + 4 原创内容

查看全部评分

发表于 2011-1-9 02:35:18 | 显示全部楼层
@include(APPPATH.'config/routes'.EXE;);

是不是有点小问题?

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

这个如果有很多泛域名的话,手动新建可见恐怖了,干脆配置一个模板,如果规则默认的话,就加载模板,如果有细微区别的,则补充一个新规则。
发表于 2011-1-30 18:50:29 | 显示全部楼层
非常好。刚好用得上了。 谢谢楼上两老。哈哈。
发表于 2011-2-8 11:40:06 | 显示全部楼层
很不错,如果能按照二楼的去修改,那就更完美了
发表于 2011-3-5 21:26:44 | 显示全部楼层
很不错。楼主真是高人
发表于 2011-3-7 09:28:23 | 显示全部楼层
这东西太好了,谢谢分享


—— 发送自 迷人浏览器
发表于 2011-3-7 16:36:50 | 显示全部楼层
这东西太好了,谢谢分享
发表于 2013-4-19 09:23:33 | 显示全部楼层
记号,来学习
发表于 2013-6-1 09:59:48 | 显示全部楼层
我这边的做法是直接获取当前的二级域名,根据二级域名读取对应的数据。
发表于 2013-6-1 16:35:23 | 显示全部楼层

本版积分规则