从数据库设置处理维护模式的正确方法

时间:2014-06-19 22:46:18

标签: php .htaccess http-status-code-503 maintenance-mode

构建CMS并寻找向用户显示维护模式消息的正确方法。

我的计划是在我的管理员后端有选项。我已经在我的数据库中有用于网站配置的表,我有一个只有一个值的字段。我使用1表示正常,2表示维护模式。我只是想能够更新数据库。

然而,我的问题是,正确的方法是什么?

我的第一个想法是检查数据库,然后检查值是否为" 2"我会将用户(所有PHP)重定向到例如503.php。

但我也看到更好的方法是在.htaccess中然后我可以允许某个IP仍然可以访问。但是.htaccess中的这个可以通过数据库检查来管理吗?

希望做正确的事情,就像“标准”一样好奇。这样做的方式。

我的第一个建议是否可行?维护模式的主要原因是'实际上是为了保护自己。我的网站经历了大量的测试,但我想要一种方法,我可以快速关闭访问该网站(SEO freindly),而我解决任何问题。或者我正在更新网站本身。

由于

1 个答案:

答案 0 :(得分:0)

如果您不必,您不应该从数据库中控制维护模式设置。

数据库增加了另一层复杂性,可能在某些时候失败。

在实践中,您有几个选择:

  1. 添加包含维护模式设置的文本文件。在提交请求之前,使用PHP打开并读取文件的值。然后,如果需要,您可以通过发出重定向来适当地处理它。

  2. 使用Pingometer等外部服务来监控您的网站。这会使进程自动化,如果其中任何一个发生故障,请使用其Web挂钩功能将请求发送到PHP脚本,该脚本将此值(可能使用#1中描述的方法)切换到维护模式。

  3. 我认为您的目标是,如果站点(外部)发生,您的维护模式会自动跳闸 - #1和#2提供简单的解决方案。