Php 是否有使用codeigniter的可扩展多站点策略?

Php 是否有使用codeigniter的可扩展多站点策略?,php,mysql,codeigniter,Php,Mysql,Codeigniter,一段时间以来,我一直在寻找一种高效、安全的方法来实现codeigniter的多站点功能 我发现这两篇(&)文章非常有趣,但它们似乎没有提供一种可扩展的方法。在这两种方法中,约翰·丹尼斯·佩德里(链接二)的方法似乎更符合我们的目的 然而,假设你有100个、500个或1000个独立的站点,这种方法仍然是最好的选择吗?在一个文件夹中有500个单独的db配置文件并用php更新是最好的方法吗 我认为另一个有用的方法是配置选项数据库。更新数据库,你可以让另一个网站上线。但是,这需要以明文形式存储所有数据库用

一段时间以来,我一直在寻找一种高效、安全的方法来实现codeigniter的多站点功能

我发现这两篇(&)文章非常有趣,但它们似乎没有提供一种可扩展的方法。在这两种方法中,约翰·丹尼斯·佩德里(链接二)的方法似乎更符合我们的目的

然而,假设你有100个、500个或1000个独立的站点,这种方法仍然是最好的选择吗?在一个文件夹中有500个单独的db配置文件并用php更新是最好的方法吗

我认为另一个有用的方法是配置选项数据库。更新数据库,你可以让另一个网站上线。但是,这需要以明文形式存储所有数据库用户名和密码。我看不出进展顺利


有任何答案、建议、提示或有趣的想法吗?

也许您可以在HMVC(分层模型视图控制器)中找到答案


Codeigniter有一些模块化扩展,您可以在HMVC(分层模型视图控制器)中找到答案


Codeigniter有一些模块化扩展,您可以找到一些

我们可以这样做

config.php
文件中,我们可以将基本url定义为

$protocol = preg_split('[/]', $_SERVER["SERVER_PROTOCOL"]);

$http_protocol = strtolower($protocol[0]) . "://";

$config['base_url']     = $http_protocol . $_SERVER["HTTP_HOST"]. "/" ;
我们可以使用域名前缀和下划线来创建数据库,并完成设置

在database.php文件中,如下所示

$db['default']['hostname'] = 'localhost';

$db['default']['username'] = 'xxxxxxxx';

$db['default']['password'] = 'xxxxxx';

$db['default']['database'] = $_SERVER["HTTP_HOST"] . '_thedatabasename';

我们可以这样做

config.php
文件中,我们可以将基本url定义为

$protocol = preg_split('[/]', $_SERVER["SERVER_PROTOCOL"]);

$http_protocol = strtolower($protocol[0]) . "://";

$config['base_url']     = $http_protocol . $_SERVER["HTTP_HOST"]. "/" ;
我们可以使用域名前缀和下划线来创建数据库,并完成设置

在database.php文件中,如下所示

$db['default']['hostname'] = 'localhost';

$db['default']['username'] = 'xxxxxxxx';

$db['default']['password'] = 'xxxxxx';

$db['default']['database'] = $_SERVER["HTTP_HOST"] . '_thedatabasename';