【问题标题】:Application visibility for superadmin during maintenance mode [closed]维护模式期间超级管理员的应用程序可见性[关闭]
【发布时间】:2012-10-29 13:22:09
【问题描述】:

我的应用程序现已完全构建。但有时我需要将其关闭以进行维护。所以我创建了一个 .htaccess 文件,现在当用户尝试打开应用程序时,他们会被重定向到一个包含维护图像的不同页面。问题是超级管理员完成维护后,他们需要检查应用程序现在是否正常运行。但是,即使他们被导航到维护页面,也没有办法做到这一点。解决方案之一是创建测试环境。但是他们还有其他简单的解决方案吗?

【问题讨论】:

  • 在您的情况下,实时环境是测试环境。允许从某些看不到任何维护消息的点进行访问。正如你所说的 .htaccess 从 Apache httpd 访问控制开始。
  • 不要在 htaccess 中这样做,有一个像在线/离线这样的网站设置。然后相应地重定向,但当路由是管理员登录时没有重定向。
  • 这不是一个问题,而是一个谷歌请求,我想说:davidwalsh.name/htaccess-maintenance-page-redirect
  • “允许从某些点访问” - 这正是我想要的。但这只能通过 .htaccess 实现吗?
  • @AbhishekSaha:取决于网络服务器配置、应用程序本身、您的需求等。顺便说一句。你问这个问题的方式不是很有建设性,因为有上千种方法可以做到这一点。

标签: php .htaccess maintenance-mode


【解决方案1】:

如果您的 .htaccess 文件中有一些静态 IP,您可以尝试这样做:

RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} !^11\.111\.111\.111
RewriteCond %{REQUEST_URI} !^/maintenance\.html$
RewriteRule ^(.*)$ http://domain.com/maintenance.html [R=307,L]

如果需要,Ypu 可以为超过 1 个 'admin' ip 指定多个 REMOTE_ADDR 行。

这会将未提及 IP 的任何人发送到维护页面。

ALTERNATIVE 是处理 PHP 中的维护模式...基本上,您可以在 php 脚本中拥有 IP 列表并显示维护页面或正常运行应用程序...显然这样解决方案需要正确放置在您的代码流中,并需要一些简单的机制来启用/禁用站点。

【讨论】:

  • @hakre,给了我这个链接。而且情况和我的很相似。唯一的区别是我们有多个超级管理员可以从不同的位置访问。
  • 您只需为他们拥有的任何 IP 添加更多 %{REMOTE_ADDR} 行。
  • @AbhishekSaha:这不公平。既然有了答案,你就开始详细阐述这个问题。那是没有建设性的
  • 而且我也认为这是最可行的解决方案。我将等待更多答案,否则将接受您的解决方案。谢谢。
  • 这完全取决于您的偏好... PHP - 方式意味着您可以通过管理站点本身打开/关闭站点,以及快速添加 IP(如果您存储在 do 或 could检查 ips 时写入和解析一些文本文件)。 .htaccess 方式也很有效……但是当您需要启用/禁用站点和添加/删除 IP 时,需要在服务器端进行编辑……所以对于您的组织/站点来说,无论做什么都是最简单的!
猜你喜欢
  • 2016-10-21
  • 1970-01-01
  • 1970-01-01
  • 2016-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-20
  • 1970-01-01
相关资源
最近更新 更多