{"id":1070,"date":"2009-02-25T23:49:37","date_gmt":"2009-02-25T22:49:37","guid":{"rendered":"http:\/\/bitacora.eniac2000.com\/?p=1070"},"modified":"2009-02-25T23:49:37","modified_gmt":"2009-02-25T22:49:37","slug":"uso-de-wordpress-bajo-multiples-direcciones-de-blog","status":"publish","type":"post","link":"https:\/\/bitacora.eniac2000.com\/?p=1070","title":{"rendered":"Uso de WordPress bajo m\u00faltiples direcciones de blog"},"content":{"rendered":"<p>Desde hac\u00eda bastante tiempo ten\u00eda fuera de uso la (supuestamente) direcci\u00f3n principal de mi sitio web, <a href=\"http:\/\/www.eniac2000.com\">www.eniac2000.com<\/a>. Antiguamente, ten\u00eda en esta direcci\u00f3n un sitio web separado, basado en Joomla!, dedicado principalmente a ciclismo. Sin embargo, desde una intrusi\u00f3n de crackers, decid\u00ed deshabilitarlo.<\/p>\n<p>El caso es que me he decidido a volver a habilitar la direcci\u00f3n para acceder a este diario en la red, pero manteniendo la antigua direcci\u00f3n (<a href=\"http:\/\/bitacora.eniac2000.com\">192.168.0.4\/wordpress\/<\/a>). La primera posibilidad que se me ocurri\u00f3 para ello fue hacer uso del m\u00f3dulo de Proxy (ProxyPass\/ProxyPassReverse) de Apache2. Esto suele dar buenos resultados, pero no en el caso de WordPress. \u00bfPor qu\u00e9? Por el mecanismo que utiliza para componer las URLs del sitio. Dentro de las opciones generales se especifican las direcciones base del sitio, y a partir de ah\u00ed genera las URLs completas, componerlas de manera relativa a partir del nombre del host para que se realizan las solicitudes al servidor Apache:<\/p>\n<p><a href=\"http:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2009\/02\/opciones-generales-01.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2009\/02\/opciones-generales-01-400x159.png\" alt=\"opciones-generales-01\" title=\"opciones-generales-01\" width=\"400\" height=\"159\" class=\"alignnone size-medium wp-image-1071\" \/><\/a><\/p>\n<p>Esto provoca que al hacer uso del proxy Apache, se cargue correctamente el sitio bajo el dominio alternativo, pero el resto de los elementos de la p\u00e1gina se refieren al dominio original, por lo que la soluci\u00f3n no es completamente v\u00e1lida, ya que tenemos mezclados ambos nombres de sitio.<\/p>\n<p>Por ello, he tenido que trastear un poco m\u00e1s, y he encontrado una soluci\u00f3n que parece bastante aceptable. La soluci\u00f3n es la siguiente: editar el fichero wp-config.php de la instalaci\u00f3n de WordPress, y a\u00f1adir las siguientes l\u00edneas:<\/p>\n<p><code>$hostname = preg_replace('\/:.*\/', \"\", $_SERVER['HTTP_HOST']);<br \/>\nif($hostname == 'www.eniac2000.com') {<br \/>\n        define('WP_SITEURL', 'http:\/\/www.eniac2000.com');<br \/>\n        define('WP_HOME', 'http:\/\/www.eniac2000.com');<br \/>\n}<\/code><\/p>\n<p>Es decir, almacenamos el nombre del host bajo el que estamos llamando al sitio, y, posteriormente, si coincide con el nombre alternativos, definimos de manera est\u00e1tica las variables WP_SITEURL y WP_HOME. El resultado es que ambos sitios son accesibles, y esto es lo que aparece cuando se entra en las opciones generales del sitio alternativo:<\/p>\n<p><a href=\"http:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2009\/02\/opciones-generales-021.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/bitacora.eniac2000.com\/wp-content\/uploads\/2009\/02\/opciones-generales-021-400x159.png\" alt=\"opciones-generales-021\" title=\"opciones-generales-021\" width=\"400\" height=\"159\" class=\"alignnone size-medium wp-image-1075\" \/><\/a><\/p>\n<p>Como puede apreciarse, las entradas correspondientes a las URL del sitio ya no son las definidas por defecto, sino las alternativas que, adem\u00e1s, no son editables.<\/p>\n<p>Esta opci\u00f3n, por cierto, s\u00f3lo es v\u00e1lida para la instalaci\u00f3n de WordPress convencional. En el caso (como es el m\u00edo) de que se utilice la versi\u00f3n de WordPress instalable desde paquetes Debian, hay que jugar un poco m\u00e1s.<\/p>\n<p>En primer lugar, el fichero wp-config.php de la instalaci\u00f3n s\u00f3lo es una referencia al fichero de configuraci\u00f3n ubicado en el directorio \/etc\/wordpress. Ese fichero de configuraci\u00f3n, en mi caso, es \/etc\/wordpress\/config-bitacora.eniac2000.com.php (ya que el nombre del fichero tiene que contener el nombre del host bajo el que se accede). Para que el acceso bajo el servidor alternativo funcione, es necesario que exista un fichero de configuraci\u00f3n para el servidor alternativo. La manera m\u00e1s razonable es crear un enlace simb\u00f3lico (config-www.eniac2000.com.php) al fichero config-bitacora.eniac2000.com.php . Y en el fichero original, a\u00f1adir las l\u00edneas anteriores.<\/p>\n<p>Dicho y hecho. Ahora es posible acceder a este sitio con ambos nombres. Quiz\u00e1s m\u00e1s adelante me decida a retirar 192.168.0.4\/wordpress\/, pero de momento, se quedar\u00e1n ambos. \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Desde hac\u00eda bastante tiempo ten\u00eda fuera de uso la (supuestamente)<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[13],"tags":[],"series":[],"class_list":["post-1070","post","type-post","status-publish","format-standard","hentry","category-informatica"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/1070","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1070"}],"version-history":[{"count":0,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=\/wp\/v2\/posts\/1070\/revisions"}],"wp:attachment":[{"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1070"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1070"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1070"},{"taxonomy":"series","embeddable":true,"href":"https:\/\/bitacora.eniac2000.com\/index.php?rest_route=%2Fwp%2Fv2%2Fseries&post=1070"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}