我有一个建立在codeigniter之上的网站,我想暂时关闭网站进行更改。我想通过创建一个经过批准的IP地址的白名单来实现这一目标,这些IP地址可以在我升级时访问常规网站,所有其他用户将被路由到临时页面。处理这个问题的好策略是什么?也许使用路由类的东西?
$whitelist = array('99.999.999.999', '555.555.555.555');
if(!in_array($_SERVER['HTTP_X_REAL_IP'], $whitelist))
$route['(:any)'] = 'maintenance/index/';
我也不想破坏我的搜索引擎索引,所以我应该发送一个特定的标头来表明这是一个临时的变化吗?
答案 0 :(得分:1)
我认为你正在沿着正确的道路走下去。你想到的是路线改变。服务器应使用503响应代码。这将告诉搜索引擎您暂时停止维护,并且他们不应该索引页面。
答案 1 :(得分:1)
另一种选择是在MY_Controller扩展中做类似的事情。
Phil的公共控制器示例: http://philsturgeon.co.uk/blog/2010/02/CodeIgniter-Base-Classes-Keeping-it-DRY