Portada del sitio > SPIP > SPIP en Averroes

SPIP en Averroes

Jueves 24 de enero de 2008, por Dani

El servidor averroes ofrece espacio web a los centros de primaria y secundaria de la Junta de Andalucía. Averroes usa un proxy inverso de manera que cambia la url de acceso dependiendo de si accedemos desde dentro de la red corporativa (Centros TIC y demás) a si accedemos desde fuera de la red de la Junta. Las direcciones son del tipo:

 www.juntadeandalucia.es/averroes/centro (desde cualquier sitio)
 averroes.ced.junta-andalucia.es/centro (desde la red corporativa)

Los gestores de contenido (SPIP, Moodle, Joomla!, etc.) programados en PHP usan una variable php para almacenar la url principal del sitio que suele quedar fijada (durante la instalación) en alguno de sus ficheros de configuración. El existir dos urls hace que si hemos instalado desde una, no funcione desde la otra y/o viceversa.

Para solucionar el problema se crea una ’condicional’ en php:

 si detecta el proxy (si se accede desde dentro), usa la url de la red corporativo
 si no hay proxy (se accede desde fuera), usa la url normal

Evidentemente eso hay que expresarlo en lenguaje PHP y ponerlo en el fichero de configuración del CMS.

Averroes publicó la solución para Moodle y Joomla!. Yo conseguí la solución para el caso de SPIP (muy diferente en su funcionamiento al resto de CMS) y a raíz de ello (lo difundí y publiqué en mis cursos sobre SPIP en los CEPs de Almería y Córdoba) se consiguieron instalar en averroes las primeras web gestionadas con SPIP.

Durante los meses de Diciembre-2007 y Enero-2008 Averroes ha hecho cambios en sus servidores y mi solución para SPIP, aunque sigue funcionando si accedemos desde fuera de la red corporativa, ocasiona problemas de acceso al espacio privado desde dentro de la red de la Junta.

Averroes ha publicado (gracias a la insistencia de Alfonso Gómez) los nuevos cambios a realizar en la configuración de SPIP y se basan en una pequeña modificación de la solución que aporté para la versión anterior de Averroes.

La solución pasa por modificar el fichero /ecrire/inc/utils.php.

Fichero /ecrire/inc/utils.php original:

	// cas particulier des sites filtres par un proxy entrant
	// cf. http://trac.rezo.net/trac/spip/ticket/401
	// le forwarded_host peut prendre plusieurs valeurs separees par des virgules
	// chez ovh notamment
	if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])){
		$server = explode(',',$_SERVER['HTTP_X_FORWARDED_HOST']);
		$server = trim(reset($server));
	}
	else
		$server = $_SERVER['HTTP_HOST'];

Fichero /ecrire/inc/utils.php que modifiqué para la versión antigua de averroes:

	// cas particulier des sites filtres par un proxy entrant
	// cf. http://trac.rezo.net/trac/spip/ticket/401
	// le forwarded_host peut prendre plusieurs valeurs separees par des virgules
	// chez ovh notamment
	if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])){
//		$server = explode(',',$_SERVER['HTTP_X_FORWARDED_HOST']);
//		$server = trim(reset($server));
$server = 'www.juntadeandalucia.es/averroes';     // añadida Dani
	}
	else
//		$server = $_SERVER['HTTP_HOST'];
server = 'averroes.ced.junta-andalucia.es';      // añadida Dani

Fichero /ecrire/inc/utils.php que funciona actualmente:

[(

	// cas particulier des sites filtres par un proxy entrant
	// cf. http://trac.rezo.net/trac/spip/ticket/401
	// le forwarded_host peut prendre plusieurs valeurs separees par des virgules
	// chez ovh notamment

	$forwarders = $_SERVER["HTTP_X_FORWARDED_FOR"];
 	if ( ! strpos ($forwarders,"10.160.5")) {
 	       $server = 'averroes.ced.junta-andalucia.es';
	 }
	 else 
               $server = 'www.juntadeandalucia.es/averroes';

)]

Te recuerdo que debes modificar el /ecrire/inc/utils.php mediante un editor de texto plano (por ejemplo gedit en Linux), no uses un procesador tipo Word porque le añadirá un montón de basura y no funcionará.

Por tanto: descarga por ftp el /ecrire/inc/utils.php, modifícalo y súbelo de nuevo (sobreescribiendo el anterior).

Mensajes

  • Hola Dani, soy Alejandro del Ceip Carlos III de La Carlota. Nosotros tenemos instaladas dos SPIP (todas con tus esqueletos); una con la versión 1.9.1 y la segunda corresponde a la 1.9.2b. Mi pregunta es ¿la modificación sirve indistintamente para el archivo uitils de las dos SPIP?

    Gracias y recibe un cordial saludo desde La Carlota (Córdoba)

    Ver en línea : http://www.juntadeandalucia.es/aver...

    • Hola Alex:

      La modificación vale para SPIP 1.9.2.x (incluida la nueva versión 1.9.2.d que salió ayer).
      En la 1.9.1 el código era algo distinto y hay que modificar alguna cosilla más:

      código original de SPIP 1.9.1

      function url_de_base() {
      	global $REQUEST_URI;
      
      	static $url;
      
      	if ($url)
      		return $url;
      
      	// cas particulier des sites filtres par un proxy entrant
      	// cf. http://trac.rezo.net/trac/spip/ticket/401
      	if (isset($_SERVER['HTTP_X_FORWARDED_HOST'])) {
      		$a = $GLOBALS['meta']['adresse_site'];
      		return (substr($a,-1) == '/')?$a:$a.'/';
      	}
      
      	$http = (
      		(isset($_SERVER["SCRIPT_URI"]) AND
      			substr($_SERVER["SCRIPT_URI"],0,5) == 'https')
      		OR (isset($_SERVER['HTTPS']) AND
      		    test_valeur_serveur($_SERVER['HTTPS']))
      	) ? 'https' : 'http';
      	# note : HTTP_HOST contient le :port si necessaire
      	$myself = $http.'://'.$_SERVER['HTTP_HOST'].$REQUEST_URI;
      
      	# supprimer la chaine de GET
      	$myself = preg_replace(',\?.*$,','', $myself);
      
      	# supprimer n sous-repertoires
      	$supprime_preg = '/+';
      	for ($i=0; $i<$GLOBALS['profondeur_url']; $i++)
      		$supprime_preg .= '[^/]+/+';
      	$url = preg_replace(','.$supprime_preg.'[^/]*$,', '/', $myself);
      	return $url;
      }

      Código retocado para averroes:

      [*

      function url_de_base() {
      	global $REQUEST_URI;
      
      	static $url;
      
      	if ($url)
      		return $url;
      
      	// cas particulier des sites filtres par un proxy entrant
      	// cf. http://trac.rezo.net/trac/spip/ticket/401
      	$forwarders = $_SERVER["HTTP_X_FORWARDED_FOR"];
              if ( ! strpos ($forwarders,"10.160.5")) {
                     $server = 'averroes.ced.junta-andalucia.es';
               }
               else
                    $server = 'www.juntadeandalucia.es/averroes';
      
      
      	$http = (
      		(isset($_SERVER["SCRIPT_URI"]) AND
      			substr($_SERVER["SCRIPT_URI"],0,5) == 'https')
      		OR (isset($_SERVER['HTTPS']) AND
      		    test_valeur_serveur($_SERVER['HTTPS']))
      	) ? 'https' : 'http';
      	# note : HTTP_HOST contient le :port si necessaire
      	$myself = $http.'://'.$server.$REQUEST_URI;   //aquí ha modificado DANI
      
      	# supprimer la chaine de GET
      	$myself = preg_replace(',\?.*$,','', $myself);
      
      	# supprimer n sous-repertoires
      	$supprime_preg = '/+';
      	for ($i=0; $i<$GLOBALS['profondeur_url']; $i++)
      		$supprime_preg .= '[^/]+/+';
      	$url = preg_replace(','.$supprime_preg.'[^/]*$,', '/', $myself);
      	return $url;
      }

      *]

      Si lo pruebas .. dime si funciona.

      Salu2

    • Hola Dani, quería comentarte que ya vuelve a funcionar todo desde el colegio. Lo único que echo de menos en la versión 1.9.1 que ya no me aparece ese cartelillo de "Actualizar página" cuando creo un nuevo artículo. Por lo que dicho artículo aparece normalmente al día siguiente. Sin embargo este problema no lo tengo en la 1.9.2.b, por lo que seguramente optaré por actualizar la versión del más antiguo.

      Un saludo

    • Puedes actualizar manualmente cualquier página añadiendo ?var_mode=calcul.

      Por ejemplo, esto actualiza tu portada:

      http://www.juntadeandalucia.es/averroes/carlostercero/index2.php?var_mode=calcul

    • Hola soy Daniel. Uso Joomla en averroes para un centro educativo y NO, el problema no ha sido resuelto (al menos desde la versión 1.5) Sólo se ha resuelto lo básico, pero en el momento en que trasteas algo todo vuelve a fallar. Por ejemplo el editor Tinymce no funciona.
      La verdad es que hoy en día, averroes deja muuucho que desear, y no me extraña que las páginas "serias" de la consejería (CEPs, algunos centros ...) estén fuera de averroes. Por 30 euros anuales tienes espacio ilimitado y bases de datos. No me gusta hacer esto, pero los docentes no deberíamos perder tanto tiempo en cuestiones técnicas.

    • No uso Joomla! por lo poco configurable que es y por los continuos agujeros de seguridad. Por eso hablo de SPIP y uso SPIP. Desconozco si joomla! funciona con el nuevo averroes.

      Evidentemente el espacio de averroes es bueno para empezar .. En mi centro decidimos un servidor propio (un ordenador permanentemente encendido en el centro) y para el año que viene nos mudamos a un hosting compartido (que ya funciona en iesmarserena.org) pagando el doble de lo que tu dices (a esos precios tan baratos prefiero calidad).

  • Gracias por tu trabajo Daniel. A ver si puedes ayudarme porque ando un poco perdido.

    He alojado la web de mi IES en averroes IES Ventura Morón, desde fuera de la red corporativa funciona bien, pero desde dentro (aún con las modificaciones de /ecrire/inc/util.php que propones) no se puede hacer nada (cualquier intento de acción arroja un mensaje de acceso prohibido).

    Gracias por tu atención.

    • Ahora mismo no se puede acceder al servidor MySQL de averroes.

      Me gustaría saber que tienes puesto en Configuración del Sitio / url del sitio

      Por cierto ahora mismo estoy dando un curso para el CEP de Algeciras (para primaria).
      Daré otro para Secundaria después de Navidad (tb. para el CEP Campo de Gibraltar).

      Salu2

      1. Gracias por la respuesta.
      2. La URL del sitio público está configurada a "http://www.juntadeandalucia.es/averroes/~11000381/spip/" (sin las comillas, por supuesto :-))
      3. Con respecto al curso de SPIP para secundaria en el campo de Gibraltar, ¿sabes ya qué fechas son y a qué CEP pertenecen? Me gustaría apuntarme.

      Saludos, Raúl Reina.

    • Pueden ocurrir que tu utils.php sea incorrecto (cualquier punto o coma de más o de menos .. puede ser fatal en php).
      Si me acuerdo .. el Lunes intentaré entrar desde la red de la Junta.

      Respecto al curso .. no es sobre SPIP. Se llama Matemáticas y Guadalinex. Puedes verlo aquí:

      http://www.cepcampgib.org/gestion/actividades_abiertas.php

    • El código PHP correspondiente a ecrire/inc/utils.php es el siguiente

        $forwarders = $_SERVER["HTTP_X_FORWARDED_FOR"];
         if ( ! strpos ($forwarders,"10.160.5")) {
                $server = 'averroes.ced.junta-andalucia.es';
          }
          else
               $server = 'www.juntadeandalucia.es/averroes';

      Y la verdad es que no le encuentro ninguna pega. Ciertamente rozo la desesperación (jeje). En verdad necesitamos acceso al espacio privado desde el centro. ¿Serias tan amable de enviarme a mi correo (raulrm75 arroba yahoo.es) algún utils.php que funcione? Mi SPIP es la versión 1.9.2.

      Muchas gracias Dani. Nos vemos en el curso de Algeciras.

      Saludos. Raúl Reina.

    • Aunque parezca mentira, la solución a nuestro problema era obvia: usar un navegador que respete los estándares. Accedí desde la web corporativa usando firefox, y ningún problema.

      Estamos a vuestra disposiciín en el IES Ventura Morón

    • Ante todo me alegro ..

      He visitado las páginas de vuestro centro y veo que impartís la asignatura de Estadística como optativa en 2º Bachillerato.

      Me interesaría compartir con vosotros algunos detalles relacionados con la asignatura y la forma de llevarla.
      Yo la imparto en mi centro y en los primeros temas de estadśitica descriptiva .. nada de examen. No me interesa para nada que sepan calcular desviaciones típicas, coeficientes de correlación y demás (a base de calculadora). Tampoco me interesa que sepan hacer gráficos de barras, sectores, etc. con colorines.

      A mí lo que me interesa es que sepan hacer todo eso .. pero con una hoja de de cálculo con software libre: OpenOffice por ejemplo. Me interesa más que sepan hacer los gráficos con el ordenador a que los hagan con colorines y reglas.

      El sistema que uso es mediante moodle. Me envían los ejercicios por este método.
      ¿Y los que no tienen internet? Se buscan la vida .. si no tienen .. ya se las apañan para ir a casa del compañero o de su tía. Evidentemente no es obligatorio tener internet. Pero quien no sepa buscarse la vida tendrá que pasar un duro examen con cientos y cientos de cálculos con calculadora y gráficos usando colorines (pobrecillo el que diga que tampoco tiene calculadora). El 100% prefiere el sistema de Internet.

      Las ventajas de una asignatura que no entra en selectividad son muchas. Además en mi centro esta asignatura tiene 4 horas (imagino que en otros centros tendrá 3 horas semanales). Pienso que el futuro de nuestros estudiantes será mejor si saben hacer estas cosas con ordenador .. si el día de mañana trabajan en alguna empresa no les van a pedir que hagan medias y desviaciones típicas a mano .. les pedirán que hagan esas cosas a ordenador.

      Evidentemente necesitan unos conceptos teóricos (para eso son las clases diarias) y los trabajos los hacen por las tardes-noches en casa (normalmente suelen aprovechar los fines de semana o días en los que no tienen exámenes de otras asignaturas). La respuesta del alumnado es sorprendentemente positiva. Basta con que le digas "no haremos exámenes" para tenerlos enganchados los fines de semana trabajando y haciéndote consultas por e-mail.

      La pena es que en otras asignaturas de 2º bachillerato no podamos trabajar de esa forma por la "puta selectividad" y tengamos que restringirnos al sistema tradicional (que también disfruto en la pizarra cuando tienes chavales con cierto interés .. pero me lo paso mejor en los temas online).

      Podéis enviarme un e-mail (quien imparta la asignatura de Estadística) y hablamos del tema.

      Salu2

  • Querido Dani,
    antes de nada yo también quiero agradecerte tu trabajo que tanto nos anima y ayuda,
    el curso pasado hice el curso de SPIP contigo
    he mantenido un par de páginas SPIP
    pero hoy es el día que estoy montanto la del insti en Averroes.
    Me ha bajado la última versión del CMS
    y he intentado hacer la modificación que propones antes de subir los archivos
    al sitio de Averroes.
    No encuentro las líneas que describes.
    Por más vueltas que le he dado.
    Al final he decidio instalar y luego ver qué pasa.
    ¿Sabes por qué no encuentro las líneas que propones modificar?
    Saludos
    Mª Ángeles Moreno (Alyanub)

    • Las modificaciones que proponía eran para la versión 1.9.x de SPIP.

      En la ver. 2.x hay muchos cambios. Aún no he tenido tiempo de mirar cómo va en averroes.

      A ver si la semana que viene tengo tiempo .. para instalarlo/probarlo desde mi insti .. para probarlo desde ambas conexiones (corporativa y privada).

      Salu2

    • Acabo de instalar spip (2.1 en servidor de averroes) hace una semana y je, je. Tengo el eterno problema de proxy. ¿Has dado con la solución?

      http://www.juntadeandalucia.es/averroes/iesroche/

      Uso spip hace tiempo y me encanta (http://tizatic.es) por su sencilla edición de artículos y administración y lo considero idóneo para un centro educativo. Actualmente funciona pero no podemos acceder al espacio privado desde fuera de la red.

      Ante todo, con respuesta o sin ella, muchas gracias. Simplemente con la información que prestas animas a seguir en ello.

    • Hace mucho tiempo que no miro nada sobre eso. Los continuos cambios de averroes hacen que haya que estar investigando cada dos por tres. Uso SPIP en todas mis webs, pero las albergo en servidores privados.

      De todas formas, poderse se puede; de hecho la web del CGA está con SPIP y está albergada en averroes (sería cuestión de preguntarles a ellos).

      Un saludo.

    • Bueno, lo intentaré con el cga aunque la mayor parte de las veces no obtengo respuesta. Muchas gracias por el interés, era por si tenías una solución. Mi spip y mi moodle también lo tengo en servidores privados y todo va de maravilla. Para el centro quería alojarlo en el servidor público, que para ello está. Pero la verdad es que el tiempo que he invertido solicitándolo, corrigiendo errores de averroes y del redireccionamiento, hacen que posiblemente recomiende a la dirección contratar un alojamiento.

      Un saludo y muchas gracias.

  • Soy un poco nuevo en esto, recientemente nos han asignado en el centro una Ip, para que podamos instalar nuestro servidor.

    Veo que muchos ya lo habéis realizado, y me gustaría saber algunas cosas. La primera es cómo lo habéis realizado. Yo, ahora estoy en mi casa, instalando un servidor ubuntu, para luego colocarlo allí en el centro, pero me surge la duda de si cada vez que quiera actualizarlo, tendré que traérmelo ¿cuál es la proxy de Averroes? ¿Cómo actualizáis el sistema? ¿o quizás no haya ningún problema?

    Gracias

  • Hola Dani. Veo que has podido ayudar en muchos casos lo que averroes, en principio nos niega.
    Mi problema es también parecido pero con joomla. Tengo alojada la web del Centro, en joomla 2.5, en un servidor externo y cuando accedo desde el Centro TIC se interrumpe constantemente la navegación, con el mensaje de error que adjunto.
    Supongo que el problema puede arreglarse con algunas líneas de código que vifurque a una url o a otra según si se accede desde dentro de averroes o de fuera, pero estoy pez en php.
    ¿Me podrías ayudar un poco?. Gracias.

¿Un mensaje, un comentario?

moderación a priori

Este foro es moderado a priori: su contribución sólo aparecerá una vez validada por un/a administrador/a del sitio.

¿Quién es usted?
Su mensaje

Para crear párrafos, deje simplemente líneas vacías.

Añadir un documento