Funciona en localhost, se desconfigura desde fuera

Funciona en localhost, se desconfigura desde fuera

de Felipe Perucho -
Número de respuestas: 11
Estoy montando una plataforma educativa utilizando mi ordenador como servidor. Al principio tenía el servidor funcionando en local (localhost), y ahora estoy intentando convertir mi ordenador en un servidor "de verdad", que sea accesible para todo el mundo.
Utilizo Xamp como paquete de servidor (Apache + MySQL) y Moodle 1.6. Entrando desde mi ordenador (localhost) todo funciona bien, pero al hacerlo desde otro ordenador, la página principal aparece desconfigurada, como sin el tema, y además los vínculos no dan acceso a nada.
¿Alguien puede darme alguna pista?
Promedio de valoraciones: -
En respuesta a Felipe Perucho

Re: Funciona en localhost, se desconfigura desde fuera

de Iñaki Arenaza -
Imagen de Desarrolladores Imagen de Desarrolladores de plugins Imagen de Documentadores Imagen de Moderadores Imagen de Moodlers de gran ayuda
Necesitas retocar el valor $CFG->wwwroot de tu fichero config.php. Ahora mismo estarás usando localhost como nombre de la web y para que sea utilizable desde otras máquinas deberás indicar su dirección IP o su nombre de DNS (nombre de red). Algo del estilo de:

$CFG->wwwroot = 'http://192.168.1.1/moodle';

o

$CFG->wwwroot = 'http://mimaquina.midominio.org/moodle';

(por supuesto usando los datos de tu maquina, y añadiendo el trozo final '/moodle' sólo si actualmente lo tienes puesto en el valor de wwwroot de tu fichero config.php).

Saludos. Iñaki.
En respuesta a Iñaki Arenaza

Re: Funciona en localhost, se desconfigura desde fuera

de Felipe Perucho -
Después de hacer los cambios que me sugiere Iñaki, lo que ocurre es que me sale desconfigurado al intentar entrar desde mi ordenador por medio de "localhost". El aspecto que tiene desconfigurado es éste (es el que tenía antes al intentar entrar desde otros ordenadores):

Mal

Y el aspecto que debería tener es éste:

Bien

Os envío una transcripción de mi fichero config.php:

<?php  /// Moodle Configuration File

unset($CFG);

$CFG->dbtype    = 'mysql';
$CFG->dbhost    = 'localhost';
$CFG->dbname    = 'moodle';
$CFG->dbuser    = 'XXXXXXXXX';
$CFG->dbpass    = 'XXXXXXXXX';
$CFG->dbpersist =  false;
$CFG->prefix    = 'mdl_';

$CFG->wwwroot   = 'http://localhost';
$CFG->dirroot   = 'D:\Documents and Settings\Felipe\Mis documentos\Programas\PHP\moodle\moodle';
$CFG->dataroot  = 'D:\Documents and Settings\Felipe\Mis documentos\Programas\PHP\moodle/moodledata';
$CFG->admin     = 'admin';

$CFG->directorypermissions = 00777;  // try 02777 on a server in Safe Mode

$CFG->unicodedb = true;  // Database is utf8

require_once("$CFG->dirroot/lib/setup.php");
// MAKE SURE WHEN YOU EDIT THIS FILE THAT THERE ARE NO SPACES, BLANK LINES,
// RETURNS, OR ANYTHING ELSE AFTER THE TWO CHARACTERS ON THE NEXT LINE.
setlocale(LC_TIME, "es_ES")
?>

Lo que modifiqué siguiendo los consejos de Iñaki fue la línea que está en azul, en la que escribí:

$CFG->wwwroot   = 'http://nombrefalso.no-ip.info/moodle';

Si alguien puede ayudarme, contará con mi agradecimiento eterno (empiezo a tener espasmos nerviosos por estar durante tanto tiempo a punto de conseguirlo). ¿Tendría que tocar algo más que el config.php?

Un saludo a todos y muchas gracias por adelantado.
En respuesta a Felipe Perucho

Re: Funciona en localhost, se desconfigura desde fuera

de Iñaki Arenaza -
Imagen de Desarrolladores Imagen de Desarrolladores de plugins Imagen de Documentadores Imagen de Moderadores Imagen de Moodlers de gran ayuda
Una vez que has editado el valor wwwroot como te indique, todo el mundo (y eso te incluye a ti también guiño) tiene que conectarse a Moodle con el nuevo nombre (es decir, ya no puedes usar localhost).

Saludos. Iñaki.
En respuesta a Iñaki Arenaza

Re: Funciona en localhost, se desconfigura desde fuera

de Felipe Perucho -
Hoy he vuelto a hacer la prueba desde un ordenador externo a mi red local. El resultado es el siguiente:

A. Desde un ordenador externo a mi red local escribiendo la dirección de no-ip (http://minombre.no-ip.info/) entro en el servidor, pero la página aparece desconfigurada y no da acceso a ninguna otra página, como muestro en la primera imagen del correo anterior.

B. Si escribo la dirección de no-ip en mi propio ordenador entro en el router.

C. Si escribo "localhost" en mi ordenador, ocurre como en el caso A.

Agradecería vuestra ayuda. El archivo config.php lo tengo como transcribí en el correo anterior, con la modificación propuesta por Iñaki (gracias).


Un saludo a todos.
En respuesta a Felipe Perucho

Re: Funciona en localhost, se desconfigura desde fuera

de Iñaki Arenaza -
Imagen de Desarrolladores Imagen de Desarrolladores de plugins Imagen de Documentadores Imagen de Moderadores Imagen de Moodlers de gran ayuda
> Desde un ordenador externo a mi red local escribiendo la dirección de no-ip (http://minombre.no-ip.info/) entro en el servidor, pero la página aparece desconfigurada y no da acceso a ninguna otra página, como muestro en la primera imagen del correo anterior.

Si tecleas http://minombre.no-ip.info/ para entrar en Moodle fuera de tu LAN, entonces tienes que poner:

$CFG->wwwroot = 'http://minombre.no-ip.info';

(sin la parte de '/moodle'). Me temo que para usarlo desde tu ordenador deberás modificar el fichero hosts.txt (que está dentro de la carpeta de Windows en alguna parte que no recuerdo) para asociar el nombre minombre.no-ip.info con la dirección 127.0.0.1, ya que de lo contrario siempre te saldrá 'roto' como ahora.

Saludos. Iñaki.
En respuesta a Iñaki Arenaza

Re: Funciona en localhost, se desconfigura desde fuera

de Felipe Perucho -
¡Solucionado! El problema era mío, que me empeñaba en no leer correctamente las indicaciones de Iñaki. Eso sí, me he resignado a cambiar el archivo config.php cada vez que quiero entrar localmente.
Muchas gracias a todos, y especialmente a Iñaki por la paliza que le he dado.
En respuesta a Felipe Perucho

Re: Funciona en localhost, se desconfigura desde fuera

de Rafael Llamas -
Hola que tal, pues tengo el mismo problema que Felipe, mi configuracion es para un servidor con un dominio propio para moodle, es decir yo no tengo la configuración de localhost (y nunca la he tenido) y sin embargo se me sigue presentando el mismo problema, igual que Felipe cheque mi archivo config.php y al parecer todo esta bien.... Es algo muy raro porque tenia instalado moodle con otro proveedor de hosting y nunca me dio ese problema, a pesar de que estaba utilizando la misma version de moodle (1.5.4) que es la que tengo ahorita, la unica diferencia es el proveedor de hosting y la ruta en donde instaló los archivos (cursos y moodledate), si alguien mas nos pudiera ayudar con este problema, se los agradeceria.
En respuesta a Rafael Llamas

Posible solucion

de Richard Vergara Ñavincopa -

Hola Amigos yo tenia el mismo problema y lo solucione cambiando la siguiente linea del archivo (gracias a este foro) config.php:

// $CFG->wwwroot   = 'http://192.168.1.2/moodle';
$CFG->wwwroot = "SERVER["HTTP_HOST"])."/moodle">http://".preg_replace('/[^\.\d\w-]/','',$_SERVER["HTTP_HOST"])."/moodle";

se podran dar cuenta que es lo que cambie....

Espero que les sirva.....

En respuesta a Rafael Llamas

Posible solucion

de Richard Vergara Ñavincopa -

Hola Amigos yo tenia el mismo problema y lo solucione cambiando la siguiente linea del archivo (gracias a este foro) config.php:

// $CFG->wwwroot   = 'http://192.168.1.2/moodle';
$CFG->wwwroot = "SERVER["HTTP_HOST"])."/moodle">http://".preg_replace('/[^\.\d\w-]/','',$_SERVER["HTTP_HOST"])."/moodle";

se podran dar cuenta que es lo que cambie....

Espero que les sirva.....