(Moodle 3.1.14+) Problema con AJAX detrás de una VPN o proxy transparente

(Moodle 3.1.14+) Problema con AJAX detrás de una VPN o proxy transparente

de Salvador Romero -
Número de respuestas: 1

Hola a tod@s.

Desde hace algún tiempo tenemos un problema bastante raro con nuestro Moodle (versión 3.1.14+). Es un servidor que tenemos en nuestro centro, se trata de un instituto de secundaria.

Cuando entras en el Moodle desde una red "normal", todo va perfectamente. Pero cuando se da alguna de las siguientes situaciones, el servicio no funciona como debería:

  • Cuando estás detrás de un proxy transparente.
  • Cuando estás accediendo a través de una VPN (por ejemplo, a través del navegador opera con la VPN activada).
  • Cuando estás accediendo a través de una fibra con el CGNAT activo (lo cual es muy habitual hoy día).
En estas circunstancia, y solo en ellas, se produce un error en las peticiones AJAX tipo POST y GET, y el servidor responde 403:

problema petición ajax

Ese caso no es significativo, pero cuando por ejemplo, quieres usar el TinyMCE para los foros, o al calificar una tarea, no termina de cargarse el editor y se queda "en blanco":

Captura 2 problema con AJAX detrás de VPN


La versión de php es la 5.5.9 y tenemos todos los módulos recomendados activos, además la opción "allways_populate_raw_post_data" está a "on".

Es un problema que realmente me está volviendo un poco loco, porque por mucho mirar los logs, activar el modo de depuración, cambiar configuraciones de php, etc. no he conseguido solucionarlo.  ¿Alguna idea? ¿A alguien le pasa algo parecido?

Un saludo y gracias de antemano.
Promedio de valoraciones: -
En respuesta a Salvador Romero

Re: (Moodle 3.1.14+) Problema con AJAX detrás de una VPN o proxy transparente

de Fernando Acedo -

El error puede ser debido al tema que está utilizando una versión de jQuery muy antigua y puede que la cargue de un sitio externo al cual no tiene acceso al usar una conexión no directa (proxy o VPN).

Comprueba que la carpeta de jQuery es siempre accesible por todos los usuarios del sistema.