2012-05-16 13 views
16

Estoy a punto de actualizar todo mi sitio. Estoy buscando consejos sobre cómo las nuevas empresas tecnológicas hacen su proceso de mantenimiento.¿Cómo hacen los sitios grandes una página de aviso de mantenimiento?

Estoy pensando en usar htaccess. Sin embargo, eso solo redirige a los usuarios que acceden, por ejemplo, index.php a maintenance.php ¿verdad? Si el usuario accede a dashboard.php, no habrá redirección.

Durante el mantenimiento, necesito acceder a index.php (SÓLO ME). ¿Alguien que trabajó en startups tecnológicas se preocupa por compartir su solución? Lo aprecié mucho.

+2

htaccess puede redirigir TODAS LAS PETICIONES a maintenance.php – Aziz

+13

Iba a dar la solución pero no trabajo para una puesta en marcha. – webbiedave

+5

@Slay Debe editar su pregunta para preguntar cómo se puede poner un sitio en modo de mantenimiento, mientras se reserva el acceso para los empleados, utilizando PHP/.htaccess. Concéntrese únicamente en los aspectos técnicos, dejando fuera las preguntas sobre las startups, etc. – Sampson

Respuesta

3

Estamos utilizando LightTPD como servidor web y estoy usando "mod_magnet" para hacer tales cosas. Mod_magnet me permite manejar las solicitudes usando scripts lua simples. Tenemos una tarea automática, que creará un archivo vacío en algún lugar del sistema de archivos del servidor web. La secuencia de comandos lua comprobará la existencia de este archivo en cada solicitud y devolverá una página de mantenimiento estático, si se encuentra el archivo. La parte importante de la secuencia de comandos tiene el siguiente aspecto:

-- 
-- maintenance page 
-- 
local config = { 
    ['maintenance'] = { 
     ['allow'] = { 
      '127.0.0.1' -- just an example IP address 
     } 
    } 
} 

if lighty.stat(lighty.env['physical.doc-root'] .. 'maintenance') then 
    tmp, _ = table.search(config.maintenance.allow, lighty.env['request.remote-ip']) 
    if not tmp then 
     -- maintenance modus 
     lighty.content = { 
      { filename = lighty.env['physical.doc-root'] .. 'error/maintenance.html' } 
     } 

     return 503 
    end 
end 

En el guión hay también una configuración para aún permitir que las direcciones IP específicas a través de, por lo que todavía se puede ver el sitio web por ejemplo de red de su empresa, cuando todo el mundo acaba de obtener la página de mantenimiento.

Esta solución funciona muy bien y debido a la automatización, no importa, si necesita la página de mantenimiento en uno o en muchos servidores web.

Si está interesado, puede encontrar más información sobre "mod_magnet" aquí:

http://redmine.lighttpd.net/projects/lighttpd/wiki/Docs:ModMagnet

1

Ya que mencionas .htaccess que estoy asumiendo que usted está usando Apache como servidor web. Como otros han mencionado, puede usar .htaccess o puede editar la configuración de VirtualHost para ese sitio específico.

De cualquier manera yo recomendaría usar mod_rewrite como Jonathon Sampson recomienda, sin embargo, usted debe tener mucho cuidado para asegurarse de enviar los códigos de estado correctos también porque bots importantes como GoogleBot quieren ver un 503 que les dice que estás actualmente en mantenimiento.

Existen instrucciones bastante claras para hacer exactamente lo que usted desea en this AskApache article.

Cuestiones relacionadas