将所有访问 Codigniter 构建网站的访问者路由到特定的控制器和方法
Posted
技术标签:
【中文标题】将所有访问 Codigniter 构建网站的访问者路由到特定的控制器和方法【英文标题】:Route all visitors to Codigniter Built Website to specific controller and method 【发布时间】:2011-08-10 16:17:47 【问题描述】:我有一个基于 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/';
我也不想破坏我的搜索引擎索引,所以我应该发送一个特定的标头来表明这是一个临时更改吗?
【问题讨论】:
【参考方案1】:我认为你正在考虑的 routes.php 更改是正确的。服务器应使用 503 响应代码。这将告诉搜索引擎您暂时停机进行维护,并且他们不应该索引这些页面。
【讨论】:
【参考方案2】:另一种选择是在 MY_Controller 扩展中执行类似的操作。
此处为 Phil 的公共控制器中的示例: http://philsturgeon.co.uk/blog/2010/02/CodeIgniter-Base-Classes-Keeping-it-DRY
【讨论】:
以上是关于将所有访问 Codigniter 构建网站的访问者路由到特定的控制器和方法的主要内容,如果未能解决你的问题,请参考以下文章