我在 codeigniter 中为客户开发了一种“销售点”应用程序。该应用程序托管在某些域名上,例如www.example.com。该应用程序已全部完成并且运行良好。现在客户希望其他公司(例如他的公司)使用此应用程序,但具有自己的子域(例如 abc.example.com)和自己的数据库(将为每个公司克隆数据库结构),这些数据库将在运行时配置公司何时填写某种表格。工作流程如下:
- 公司将通过填写特定表格向客户请求使用我们的应用程序。
- 收到某个公司的请求后,我们希望自动为其创建一个子域,复制我们的数据库并为该子域创建一个新数据库,并在 codeigniter 中进行适当的更改,以便它可以连接到新数据库。
如何实现这种功能?
最佳答案
我假设你的结构是这样的?
/root/codeigniter
/application
/controllers
/models
/views
/everything else
system
/CI system stuff
/root/public_html
/subd1.example.com/index.php
/subd2.example.com/index.php
如果是这样,只需将 index.php
文件指向 CodeIgniter 子目录
在index.php
中相应地添加以下信息:
define('DBNAME', 'subd1_db');
define('DBUSER', 'subd1_username');
define('DBPASS', 'subd1_password');
现在在 /application/config/database.php
中您需要执行以下操作:
$db['default']['hostname'] = DBNAME;
$db['default']['username'] = DBUSER;
$db['default']['password'] = DBPASS;
subd代表子域名
关于php - 动态创建多个 codeigniter 应用程序,每个应用程序都有自己的子域和数据库,但代码库相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22971491/