yinzhj_2002cn 发表于 2011-8-12 10:24:36

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

在ci的user_guide中的“管理应用程序部分”,有在一个Ci下运行过个应用程序的例子说明,
但是这个同一时间只有一个是可用的,
求教:如何做到多个应用程序能够同时访问的?

saturn 发表于 2011-8-12 18:36:19

同时访问?神马意思,将问题描述清楚。

通过不同URL进行访问不就同时运行了。
至于多个app,你只需要将application文件夹复制多份,然后为每个app放置一个index.php,设置index.php里面的application和system的绝对路径即可。

yinzhj_2002cn 发表于 2011-8-17 17:08:46

多谢saturn,
多个application可以复制多份共用没有问题,那我们如何实现多个application中的model共享呢,
比如在app1中想要调用app2的某些models,如何在app1中实现自动加载app2的model呢

visvoy 发表于 2011-8-17 17:43:28

把app2的model复制一份到app1的models目录里面

yinzhj_2002cn 发表于 2011-8-18 08:18:22

不是吧,这样需要维护2份Code,而且这不能叫做是共用啊。

FreShion 发表于 2012-6-20 19:32:19

yinzhj_2002cn 发表于 2011-8-17 17:08 static/image/common/back.gif
多谢saturn,
多个application可以复制多份共用没有问题,那我们如何实现多个application中的model共享呢,
...

如何实现多个application中的model共享。不知道哪位大虾实现了没有?可否指点一二。

Hex 发表于 2012-6-20 19:35:44

FreShion 发表于 2012-6-20 19:32 static/image/common/back.gif
如何实现多个application中的model共享。不知道哪位大虾实现了没有?可否指点一二。 ...

CI 的机制不是这样 实现比较困难。

FreShion 发表于 2012-6-21 09:47:40

Hex 发表于 2012-6-20 19:35 static/image/common/back.gif
CI 的机制不是这样 实现比较困难。

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

用a目录下的model ,调用b目录下的model,b目录下的model读取的配置文件变成a目录下的了。因为DB调用配置文件的格式是$file_path = APPPATH.'config/'.ENVIRONMENT.'/database.php'

Hex 发表于 2012-6-21 11:17:24

FreShion 发表于 2012-6-21 09:47 static/image/common/back.gif
有没有什么别的办法可行么? 我尝试在libraries下写一个接口,但是不行。

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

你可以自己写一个公共的配置文件,然后手动 include

FreShion 发表于 2012-6-21 12:04:17

Hex 发表于 2012-6-21 11:17 static/image/common/back.gif
你可以自己写一个公共的配置文件,然后手动 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接口的时候,配置文件都变掉了。

暂时没发现有什么问题。
页: [1] 2
查看完整版本: web部署,如何在一个 CodeIgniter 下同时运行多个应用程序