我想知道什么是使用单个后端制作多站点的最佳方法。我的意思是说我有一个全球购物车(比如www.abc.com)和一些区域购物车(比如www.abc.fr,www.abc.in等),我想用单一背面管理它们 - 端。
我应该在表格中使用单个数据库和site-id吗?还有如何维护文件?
感谢所有人。
答案 0 :(得分:2)
如果您需要一个共享单个数据库的系统,site_id方法也可以正常工作,我已在多个应用程序上完成此操作。
在MY_Controller中使用此代码的最佳方式:
$domain = $this->input->server('SERVER_NAME');
$this->load->model('sites_m');
// Check to see if a site exists
if ( ! $site = $this->sites_m->get_by('domain', $domain))
{
// Maybe this domain is an alias
if ( ! $alias = $this->sites_m->get_alias($domain))
{
show_error('This domain has not been set up yet.');
exit;
}
$site = $this->sites_m->get_by('id', $alias->site_id);
if ($alias->is_redirect)
{
redirect('http://'.$site->domain.uri_string());
}
}
$this->site =& $site;
这意味着您的模型,视图,控制器,您可以使用的任何内容$ this-> site-> id。或者你可以设置一个常数,无论你喜欢哪种方式:)
答案 1 :(得分:1)
一年多以前,Phil Sturgeon(一位经常担任CI的撰稿人)写了一篇关于如何做到这一点的精彩教程。见这里:http://philsturgeon.co.uk/blog/2009/06/How-to-Multi-site-CodeIgniter-Set-up