Cómo poner una página de mantenimiento en tu web

Cómo poner una página de mantenimiento en tu web

Hay veces que por algún motivo, necesitas trabajar en tu web, pero no quieres que esté online y los usuarios vean los cambios que estás haciendo. En ese caso, veamos cómo poner una página de mantenimiento en tu web haciendo uso del fichero .htaccess.

Si tienes un fichero .htaccess creado dentro del directorio /httpdocs, tendrás que editarlo. En caso de no tenerlo, deberás crearlo. El código que debes añadir en este fichero es el siguiente:

RewriteEngine on
RewriteCond %{REQUEST_URI} !/paginaDeMantenimiento.html$
RewriteCond %{REMOTE_ADDR} !^TuIpPublica
RewriteRule $ /paginaDeMantenimiento.html [R=302,L]

Dentro de este código solo hay 2 parámetros que deberás cambiar:

  • paginaDeMantenimiento.html
    Aquí deberás poner el nombre de la página html que hagas para indicar que tu web está en mantenimiento. Puede ser lo compleja que quieras o muy simple, bastaría con poner un texto que indique: “Estamos realizando labores de mantenimiento. Gracias”
  • TuIpPublica
    Aquí debes poner tú ip. Tu ip pública actual es: 54.237.249.90
    Esto se hace para que solo desde tu ip pública se pueda ver la web actual y no la página de mantenimiento. De este modo, mientras tu estás trabajando en tu web, los demás verán tu página de mantenimiento paginaDeMantenimiento.html

Ya que tu verás la web con normalidad, te preguntarás: ¿Cómo puedo comprobar que los demás no verán mi web si no la página de mantenimiento? Tienes varias opciones.

  • Comprobar tu web desde otra conexión. No sirve desde otro ordenador si está conectado al mismo router, debe ser otra conexión. Por ejemplo: si tienes ADSL en casa y además tienes conexión en el móvil con otra tarifa de datos (no vale si está conectado al mismo router por wifi) podrás comprobar tu web desde el móvil.
  • Usar un navegador anónimo de los que hay por internet. De esta forma, desde tu propia conexión, puedes ver otras páginas pero sin usar tu ip.

Por otro lado, para los que usáis WordPress podéis usar otra forma. Tan solo tenéis que añadir en el fichero functions.php de vuestro tema el siguiente código:

function modo_mantenimiento() {
if ( !current_user_can( 'edit_themes' ) || !is_user_logged_in() ) {
die('Estamos realizando labores de mantenimiento...');
}
}
add_action('get_header', 'modo_mantenimiento');

De modo que si estáis logados en WordPress podréis ver la página y en caso contrario, veréis el mensaje que pongáis en la función die.

Así de fácil, de todos modos si tienes alguna consulta no dudes en usar la zona de comentarios. Y si el post te ha sido de utilidad o piensas que le puede servir a alguien, te agradecemos que lo compartas en tus redes sociales. ¡Gracias!

8 comentarios
  • euson Publicado el 13/08/2012 a las 18:45 Responder

    hola, intento poner un blog wp en mantenimiento mediante .htaccess pero desde la ip permitida sólo me da acceso a la página principal. ¿cómo logro acceso a todas las páginas del blog?
    Gracias

  • aquihaydominios Publicado el 16/08/2012 a las 18:32 Responder

    Hola Euson,

    ¿actualmente estás mezclando el .htaccess que genera wordpress para tener urls amigables con el código de este post o solo estás usando el código del post dentro de tu .htaccess?

    Si estás mezclando, prueba a trabajar temporalmente sin urls amigables, y añadir solo el código del post y nos cuentas que tal.

    Saludos.

    • euson Publicado el 18/08/2012 a las 18:42 Responder

      Hola, uso el fichero .htaccess limpio sólo con la redirección. Y sí, uso url amigables (nombre de página)

      • aquihaydominios Publicado el 20/08/2012 a las 10:48 Responder

        Hola,

        para usar urls amigables debes usar el .htaccess que te sugiere WordPress quizás está entrando en conflicto la parte de urls amigables con la de mantenimiento.

        De todos modos, te proponemos otra forma de hacerlo quizás más eficiente para WordPress. Tan solo tienes que añadir en el fichero functions.php de tu tema el siguiente código:

        function modo_mantenimiento() {
        if ( !current_user_can( ‘edit_themes’ ) || !is_user_logged_in() ) {
        die(‘Estamos realizando labores de mantenimiento…’);
        }
        }
        add_action(‘get_header’, ‘modo_mantenimiento’);

        De modo que si estás logado podrás ver la web, y si no verás el mensaje “Estamos realizando labores de mantenimiento”

        Pruébalo por favor y nos comentas que tal.

        Saludos.

  • euson Publicado el 23/08/2012 a las 15:48 Responder

    Hola de nuevo, al final para trabajar con urls amigables simplemente había que añadir el redireccionamiento antes del código que genera el propio wp en el .htaccess.

    Gracias por la ayuda

    😀

    • aquihaydominios Publicado el 23/08/2012 a las 16:50 Responder

      De nada!! Nos alegra que al final te haya salido todo bien!

      Esperamos verte más a menudo por aquí! Saludos!

  • david gomez Publicado el 19/07/2013 a las 18:11 Responder

    Buenas Tardes,

    Oye tenia un webmaster pero el se fue y me dejo botada una web, y como modifico el .htaccess como puedo hacer para dejar la pagina como antes, lo que dice en el .htaccess en este momento es:

    Options -Multiviews
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME}.php -f
    RewriteRule ^(.*)$ $1.php

    #RewriteRule ^([A-Z0-9]+).html$ new.php?ref=$1
    #RewriteRule ^(Todos)$ new.php?cat=$1
    #RewriteRule ^(Servicios)$ new.php?cat=$1
    #RewriteRule ^(Productos)$ new.php?cat=$1
    #RewriteRule ^([a-zA-Z0-9]+)$ suscripcion.php?email=$1

    Agradezco tu ayuda

  • aquihaydominios Publicado el 19/07/2013 a las 21:50 Responder

    Hola David,

    este artículo no está relacionado exactamente con lo que comentas. No nos gustaría mezclar temas y que otros usuarios que realmente necesitan consultar el asunto del artículo se sientan confusos, por lo que no podemos extendernos en ayudarte en este artículo.

    Solo comentarte que tengas en cuentas que las últimas 5 líneas están comentadas con #. Quizás simplemente quitándole el # te funcione.

    Buena suerte. Saludos.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *