Pasar WordPress en local a servidor web

Hoy voy a tratar de explicar rápidamente como subir a un hosting una web/blog como el mío trabajado en local como expliqué en este artículo.

Es tan sencillo como subir vía FTP la carpeta WordPress que hemos usado para trabajar en local a la raíz del hosting que hayamos contratado, modificando el archivo wp-config.php para adaptarlo al servidor web y la base de datos MySQL del nombrado hosting.

Para ello, lo primero que tenemos que hacer (o al menos yo lo hago así) es crear una nueva base de datos en el panel de control de MySQL del servidor web e importar la base de datos que utilizamos en el servidor local (que la habremos exportado anteriormente desde el servidor local en un archivo sql).

Una vez hemos importado la base de datos hay un paso IMPORTANTÍSIMO que dar antes de subir la carpeta WordPress y editar su archivo wp-config.php, y es editar la tabla wp_options de la base de datos que hemos creado en el servidor web. Hay un campo que se llama siteurl que debemos modificar por el nombre de nuestro dominio, en mi caso puse http://www.sergioweb.es en lugar de http://localhost/.

Ahora ya podemos modificar el archivo wp-config.php.


<?php

/** Ajustes de MySQL. Solicita estos datos a tu proveedor 
de alojamiento web. **/
/** El nombre de tu base de datos de WordPress **/
define('DB_NAME', 'wordpress');

/** Tu nombre de usuario de MySQL **/
define('DB_USER', 'nombre de usuario que tengamos');

/** Tu contraseña de MySQL **/
define('DB_PASSWORD', 'contraseña que hayamos elegido');

/** Host de MySQL (es muy probable que no necesites cambiarlo) **/
define('DB_HOST', 'este dato lo puedes averiguar dentro de tu panel 
de control del servidor web');

Guardamos el archivo y lo subimos junto con la carpeta de WordPress a nuestra raíz del servidor web. Por ahora ya tenemos casi todo hecho, pero falta algo que hacer dentro de la administración de WordPress.

Una vez accedemos a nuestra web en el navegador nos daremos cuenta de que el menú de navegación nos envía a localhost cuando pinchamos en cada sección. Para arreglar esto solo tenemos que entrar a la administración de WordPress, vamos a Ajustes – Generales y cambiamos las direcciones que apuntan a localhost por la dirección de nuestro dominio.

Con esto ya solo falta algo que hacer, y es arreglar los enlaces de imágenes que hayamos puesto en widgets y demás, que también apuntarán a una ruta de localhost. Yo como no tenía muchas imágenes pude editarlas rápidamente pero si tienes muchas imágenes debe de haber un método más rápido que ir arreglando una a una. En cuanto lo averigüe edito esta entrada. Así también dejo paso a vuestra participación, que seguro que alguien leerá este post y sabrá más que yo sobre como arreglar estos enlaces de imágenes.

Espero que os haya servido de ayuda.

Sergio Fernández

Psicólogo y "geek"

You may also like...

22 Responses

  1. Cynthia dice:

    Hola, soy nueva en todo esto, espero que podáis ayudarme.

    Estoy creano un wordpress en local host, cuando lo termine quiero subirlo a mi hosting. Donde actualmente está alojada mi web antigua. No quiero perder el posicionamiento que esta tiene, pero quiero cambiar a WordPress. He leído en el blog de Google para Webmasters que redireccionando los dominios viejos a los actuales esto está solucionado. Esto más o menos lo tengo claro.

    Pero mi duda viene cuando pienso en la migración.

    – No entiendo si tengo que instalar wordpress en el servidor de hosting, o sólo trasladar los archivos que ya tengo en el local host.
    – ¿Podré ir actualizando el wordpress desde el hosting?
    – ¿En que momento tengo que borrar la web antigua?

    Muchas gracias por los contenidos que publicáis.

    ¡Saludos de una novata!

    • carla dice:

      Cynthia, yo ando con el mismo problema que tú- ¿Conseguiste solucionarlo? Se perdió el posicionamiento ya hecho con la web antigua?

      Un saludo.

  2. sergio dice:

    ¿Has seguido los pasos de esta entrada Cynthia? Es que cuando lo hice yo no recuerdo si tuve que instalar wordpress para poder acceder o directamente al modificar el archivo wp-config.php se quedó todo instalado en el servidor, directamente.

    Claro que podrás actualizar wordpress desde el hosting, como si estuvieras en localhost.

    La web antigua entiendo que la borras antes de meter los archivos de wordpress, si la vas a sustituir por la nueva.

    Espero haberte ayudado.

    Saludos!

  3. David dice:

    Lo que debes hacer para una migración segura es lo siguiente:
    Copia de seguridad de tu base de datos y de tu WordPress.

    Cuando tienes tu archivo SQL (exportado de la base de datos), ábrelo con un editor tipo Notepad ++ y reemplaza la URL de tu sitio en local por la nueva URL que tendras en linea. Es decir por ejemplo: “http://localhost/sitiolocal” la reemplazas por “http://dominionuevo.com”

    El Notepad ++ te permite reemplazar todas las apariciones de una vez con un botón que dice “Reemplazar todas”.

    En tu Hosting debes crear una base de datos e importar el archivo SQL ya con el URL cambiado, luego subes tus archivos del WordPress a tu hosting. Y listo, el sitio debe marchar bien sin problemas.

    Pruebas a hacer login con tu usuario y revisas que todo este bien. Este método es mas fácil, rápido y seguro que hacerlo como indicas en tu entrada.

    Saludos

    • Richard dice:

      Como indicas en tu procedimiento que para mi tambien es mejor y mas rapido.

      No se olviden que tambien deben modificar el archivo .htaccess ya que en el localhost en el RewriteBase y RewriteRule incluye la carpeta donde esta la web y cuando ya la tengamos en el hosting ya no sera necesario. (modificar estos 2):

      RewriteBase /misitioweb/
      RewriteRule . /misitioweb/index.php [L]

      quedando asi:

      RewriteBase /
      RewriteRule . /index.php [L]

      Saludos.

    • Paloma dice:

      Hola,
      Estoy en pleno proceso pero hay un paso que no entiendo. He creado la base de datos en el Servidor y he cambiado el archivo wp-config pero lo que no encuentro, ni sé donde buscar, es la base de datos que tengo que importar, es decir, esto a lo que haces referencia: “Cuando tienes tu archivo SQL (exportado de la base de datos)”

      Me podéis ayudar? Estoy un poco desesperada porque llevo intentando subir la web un montón…

      Gracias!

      • sergio dice:

        Tienes que crear una nueva base de datos en el panel de control de MySQL del servidor web que has contratado e importar la base de datos que utilizamos en el servidor local (que la habremos exportado anteriormente desde el servidor local en un archivo sql).

        Para hacer esto tienes que entrar en phpMyAdmin y gestionar ahí la exportación e importación de las bases de datos.

  4. Paula dice:

    Hola,
    Gracias por el tutorial !
    Les comento que tengo una web online y estoy trabajando en otra en local.
    Ayer me dispuse a reemplazarlas siguiendo los pasos descriptos aquí.
    Cuando terminé quise loguearme en wp-admin y no hubo manera… probé cien cosas, revisé todo de nuevo… y no hubo caso. Terminé acudiendo a mi servicio de hosting y me dijeron que recuperarían el sitio ellos desde un backup…
    No sé qué error pude haber cometido en todo el proceso… Lo intentaré de nuevo en cuanto reestablezcan la copia de seguridad de mi sitio actual.
    A alguien le pasó lo mismo…?
    Gracias de nuevo por la info!
    Saludos!

  5. miguel dice:

    muchas gracias me sirvio de mucho

  6. Ricardo dice:

    Estimados, junto con saludarlos, quisiera pedirles su ayuda, ojalá alguién tenga la disposición. No soy del área informatica y he luchado mucho para subir una web en wordpress a un hosting. Cualquier ayuda, al correo. Gracias

  7. Jipi dice:

    Molaría que tú mismo aportaras el ,étodo, jóooo.
    Esto es una prueba de post!!!!
    Gracias, de todas formas

  8. Joan Morci dice:

    Hola Sergio,

    Primero que nada feliz año 2014 y agradecerte, que tus instrucciones me fueron las más fáciles de “digerir” y completas, de cuantas encontré en estos días por la red, si bien yo tenia el caso inverso con WordPress pues había trabajado primeramente desde el servidor web, una comodidad que me ofrecía cierto alojamiento web. Yo estaba acostumbrado a trabajar siempre de forma local con webs en HTML & CSS gracias a Dreamweaver, pero como me vino un encargo en este CMS y tengo la suerte de tener un alojamiento web, que te permite descargar fácilmente la aplicación de WordPress, pues comencé así, desde el servidor web, aun a sabiendas que no era lo más prudente y de hecho siempre que había actualizaciones hacia mis copias de seguridad, por si acaso.
    Ahora que saque tiempo en estas fiestas, quise ver de que modo se trabajaba de forma local, cosa que no es tan fácil a como estaba acostumbrado con el otro tipo de webs.
    Aproveche tu información pero a la inversa, pues me interesaba trabajar en local con lo que hice desde el servidor web, me di cuenta que te faltaba un dato por actualizar en esta entrada, el de “arreglar los enlaces de las imágenes”. Buscando mucho por ahí encontré la solución (pues obviamente la probé aunque para MAMP programa de Mac).

    # Arreglar los enlaces de las imágenes con WampServer (Windows):
    Modifico los parámetros de la tabla “wp_posts” (en la base de datos SQL en ‘phpMyAdmin’), donde debemos redireccionar en las tablas ‘post_content‘ y ‘guid‘ la cantidad de entradas que estén registradas. Haremos los cambios por consultas, nos vamos a la pestaña SQL.
    – Para redireccionar la tabla ‘post_content’ escribimos:
    UPDATE wp_posts SET post_content = replace(post_content, “http://localhost/web-prueba″, “http://nombredominio.com”)
    Una vez escrito este valor, clic en la pestaña lateral derecha: Continuar (para hacer efectivos los cambios).
    – Para redireccionar la tabla ‘guid’ escribimos:
    UPDATE wp_posts SET guid = replace(guid, “http://localhost/web-prueba″, “http://nombredominio.com”)
    Una vez escrito este valor, clic en la pestaña lateral derecha: Continuar (para hacer efectivos los cambios).

    Yo lo trabaje desde MAMP (Mac) aunque la información que encontré por ahí, estaba disponible en WampServer (Windows), como te puse anteriormente.
    # Arreglar los enlaces de las imágenes con MAMP (Mac):
    Modifico los parámetros de la tabla “wp_posts” (en la base de datos SQL en ‘phpMyAdmin’), donde debemos redireccionar en las tablas ‘post_content‘ y ‘guid‘ la cantidad de entradas que estén registradas. Haremos los cambios por consultas, nos vamos a la pestaña SQL.
    En mi caso como lo probé en Mac con el programa MAMP, lo escribí tan solo así:
    – Para redireccionar la tabla ‘post_content’ escribimos:
    UPDATE wp_posts SET post_content = replace(post_content, “http://localhost:8888″, “http://nombredominio.com”)
    Una vez escrito este valor, clic en la pestaña lateral derecha: Continuar (para hacer efectivos los cambios).
    – Para redireccionar la tabla ‘guid’ escribimos:
    UPDATE wp_posts SET guid = replace(guid, “http://localhost:8888″, “http://nombredominio.com”)
    Una vez escrito este valor, clic en la pestaña lateral derecha: Continuar (para hacer efectivos los cambios).

    (En el caso concreto de MAMP para Mac, hay que añadir la numeración: 8888, para evitar conflictos con lo que trae de serie Mac).

    ————————————————

    Escribí una entrada de ello en mi blog (no quería perder esta información) donde recopile más cosas, y me prometí que cuando la acabara (tras 3 días) te escribiría la solución de las imágenes. No te pongo enlace por evitar spam en el comentario. Pero bueno como tampoco escribo muchos post con frecuencia, si accedes a mi web, puedes hacerlo desde ahí también a mi blog, y allí lo verás en la pestaña: Artículos > Diseño web, bajo este título: ‘WordPress – Copia seguridad y trabajar de forma local (Mac)’. En este post pongo varios enlaces de donde encontrar info más detallada, pues yo hago más hincapié en unos temas que otros.

    Saludos y perdona por la extensión del comentario :)

    • sergio dice:

      No haces spam hombre, pon la url de tu sitio si quieres. Bueno, espera, pero antes pincha en los anuncios de mi web y si te haces con el hosting de 1&1 pincha en los banner que he puesto jejeje. No, en serio, gracias por colaborar en mi blog. Ahora mismo no puedo revisar lo que comentas, pero seguro que servirá de ayuda a alguien. Un saludo!

    • Zaylin dice:

      Absolutely first rate and coempr-bottoepd, gentlemen!

  9. Joan Morci dice:

    Bueno, digamos que ya pinchando en el nombre se ve que conduce a una página web, quien quiera indagar más, sabrá como llegar, no me va la publicidad ni siquiera en mis webs.
    Lo importante para completar tu post lo deje en los comentarios. Cuando lo compruebes y veas que va, lo puedes implementar al post en cuestión, si quieres :)
    1&1 no es uno de los mejores alojamientos web, ni siquiera uno de los más baratos (tampoco permite hacer una llamada gratuita). El que yo tengo lo descubrí por mi hermano hace años, y es el que recomiendo siempre a mis clientes, si bien hay algunos que ya tienen su propio hosting, y de ahí también mi interés por aprender a trabajar de forma local en WP, que en realidad debería ser lo habitual.
    Que pases buen día de Reyes :)
    Saludos.

  10. jesus dice:

    Por lo que veo, el quid de la cuestión está en la bbdd. Bien, modificar wp_options es lo mismo q modificar entonces con notepad??
    ¿ se puede hacer lo mismo con una sentencia sql desde el mismo php myadmin?
    Gracias por compatir!!

  11. Javier dice:

    ¡Esto está muy bien! Yo lo había intentado ya con otros dos tutoriales que obviaban ese paso tan importante de la base de datos. El tuyo me ha ido a las mil maravillas. ¡Muchas gracias!

  12. Irene dice:

    Hola!muchas gracias por el tutorial, me ha sido de gran ayuda.
    Pero al terminar todos los pasos, tengo un problema, y es que al teclear la dirección de la we no aparece nada…la pantalla en blanco. Tampoco me deja acceder a página de administración de wordpress. ¿Qué podría estar pasando?
    Muchas gracias!!!

  1. 9 enero, 2014

    安全な電力平準化と金

    あなたがいる 実施 目覚しい仕事

  2. 11 marzo, 2014

Deja un comentario

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

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>