Chinaunix首页 | 论坛 | 博客
  • 博客访问: 40787
  • 博文数量: 31
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 10
  • 用 户 组: 普通用户
  • 注册时间: 2015-06-08 16:34
文章分类

全部博文(31)

文章存档

2015年(31)

我的朋友
最近访客

分类: 系统运维

2015-06-08 17:25:07

当我们需要对Magento网站做维护进行修改时,我们可能希望顾客暂时不能访问到网站,这时我们需要把Magento设置为维护模式,我们可以在index.php中看到这样一些代码:
  1. $maintenanceFile = 'maintenance.flag';
  2. if (file_exists($maintenanceFile)) {
  3.     include_once dirname(__FILE__) . '/errors/503.php';
  4.     exit;
  5. }
程序会检测网站根目录是否有maintenance.flag这个文件,如果有的话,将包含/error/503.php这个文件,并退出程序。因此如果我们需要设置网站为维护模式,只需要在根目录下新建一个空文件,并命名为maintenance.flag即可,用户将会看到这样的页面:
  1. Service Temporarily Unavailable
  2. The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
但是我们会发现,如果这样设置的话,即使是网站的管理员也只能看到503页面,而不能看到网站的前台,因此我们可以对代码做一些修改,让指定IP的用户可以看到网站的前台:
  1. $maintenanceFile = 'maintenance.flag';
  2. $allowedIp = array('127.0.0.1'); // 指定可以访问网站的IP
  3. if (file_exists($maintenanceFile) && ! in_array($_SERVER['REMOTE_ADDR'], $allowedIp)) {
  4.     include_once dirname(__FILE__) . '/errors/503.php';
  5.     exit;
  6. }
这样只有管理员可以看到网站的前台了,当网站维护完毕,只需删除maintenance.flag文件即可。
阅读(767) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~