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

[已解决] web部署,如何在一个 CodeIgniter 下同时运行多个应用程序

[复制链接]
发表于 2011-8-12 10:24:36 | 显示全部楼层 |阅读模式
在ci的user_guide中的“管理应用程序部分”,有在一个Ci下运行过个应用程序的例子说明,
但是这个同一时间只有一个是可用的,
求教:如何做到多个应用程序能够同时访问的?
发表于 2011-8-12 18:36:19 | 显示全部楼层
同时访问?神马意思,将问题描述清楚。

通过不同URL进行访问不就同时运行了。
至于多个app,你只需要将application文件夹复制多份,然后为每个app放置一个index.php,设置index.php里面的application和system的绝对路径即可。
 楼主| 发表于 2011-8-17 17:08:46 | 显示全部楼层
多谢saturn,
多个application可以复制多份共用没有问题,那我们如何实现多个application中的model共享呢,
比如在app1中想要调用app2的某些models,如何在app1中实现自动加载app2的model呢
发表于 2011-8-17 17:43:28 | 显示全部楼层
把app2的model复制一份到app1的models目录里面
 楼主| 发表于 2011-8-18 08:18:22 | 显示全部楼层
不是吧,这样需要维护2份Code,而且这不能叫做是共用啊。
发表于 2012-6-20 19:32:19 | 显示全部楼层
yinzhj_2002cn 发表于 2011-8-17 17:08
多谢saturn,
多个application可以复制多份共用没有问题,那我们如何实现多个application中的model共享呢,
...

如何实现多个application中的model共享。不知道哪位大虾实现了没有?可否指点一二。
发表于 2012-6-20 19:35:44 | 显示全部楼层
FreShion 发表于 2012-6-20 19:32
如何实现多个application中的model共享。不知道哪位大虾实现了没有?可否指点一二。 ...

CI 的机制不是这样 实现比较困难。
发表于 2012-6-21 09:47:40 | 显示全部楼层
Hex 发表于 2012-6-20 19:35
CI 的机制不是这样 实现比较困难。

有没有什么别的办法可行么? 我尝试在libraries下写一个接口,但是不行。

用a目录下的model ,调用b目录下的model,b目录下的model读取的配置文件变成a目录下的了。因为DB调用配置文件的格式是$file_path = APPPATH.'config/'.ENVIRONMENT.'/database.php'
发表于 2012-6-21 11:17:24 | 显示全部楼层
FreShion 发表于 2012-6-21 09:47
有没有什么别的办法可行么? 我尝试在libraries下写一个接口,但是不行。

用a目录下的model ,调用b目录 ...

你可以自己写一个公共的配置文件,然后手动 include
发表于 2012-6-21 12:04:17 | 显示全部楼层
Hex 发表于 2012-6-21 11:17
你可以自己写一个公共的配置文件,然后手动 include

我在接口文件里定义了两个常量。暂时在跟DB相关的文件里把有用APPPATH字段的地方都做个判断

$_APPPATH = APPPATH;

    // _API_APP_START_PATH
    if (defined('_API_APP_START_PATH') && !defined('_API_APP_END_PATH')) {
        $_APPPATH = _API_APP_START_PATH;
    }

然后调用的文件改为
$file_path = $_APPPATH.'config/'.ENVIRONMENT.'/database.php'

这样,每次调用api接口的时候,配置文件都变掉了。  

暂时没发现有什么问题。

本版积分规则