You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe el problema
Al activar la optimización de descargas instalando el módulo libapache2-mod-xsendfile, cuando intentamos descargar un archivo obtenemos un error 404.
Cómo reproducir
Pasos para reproducir el problema:
Instalamos libapache2-mod-xsendfile
En nuestro virtualhost añadimos X-SendFile on
En configuration.php establecemos $_configuration['enable_x_sendfile_headers'] = true;
Descargamos un archivo, por ejemplo un adjunto de una tarea enviada por un alumno
Obtenemos un 404
Comportamiento esperado
Se descarga el archivo solicitado
**Servidor
Sistema operativo : Ubuntu 22.04
Versión de Chamilo: 1.11.26
Versión de PHP: 7.4
Contexto adicional
Al establecer en app/config/configuration.php la variable $_configuration['enable_x_sendfile_headers'] = true; el código pasa en main/inc/lib/document.lib.php por la función file_send_for_download y entra en el siguiente if:
// Force the browser to save the file instead of opening it
if (isset($sendFileHeaders) &&
!empty($sendFileHeaders)) {
header("X-Sendfile: $filename");
}
X-sendfile, en este caso está recibiendo un nombre de archivo, pero no un path con la ruta completa de la ubicación del archivo a descargar, por tanto, debería modificarse header("X-Sendfile: $filename"); por lo siguiente header("X-Sendfile: $full_file_name"); para que la descarga se procese correctamente y no devuelva un error 404
The text was updated successfully, but these errors were encountered:
Describe el problema
Al activar la optimización de descargas instalando el módulo libapache2-mod-xsendfile, cuando intentamos descargar un archivo obtenemos un error 404.
Cómo reproducir
Pasos para reproducir el problema:
Comportamiento esperado
Se descarga el archivo solicitado
**Servidor
Contexto adicional
Al establecer en app/config/configuration.php la variable $_configuration['enable_x_sendfile_headers'] = true; el código pasa en main/inc/lib/document.lib.php por la función file_send_for_download y entra en el siguiente if:
X-sendfile, en este caso está recibiendo un nombre de archivo, pero no un path con la ruta completa de la ubicación del archivo a descargar, por tanto, debería modificarse header("X-Sendfile: $filename"); por lo siguiente header("X-Sendfile: $full_file_name"); para que la descarga se procese correctamente y no devuelva un error 404
The text was updated successfully, but these errors were encountered: