Change the maximum attachment/upload size

:bookmark: This guide explains how to change the maximum attachment upload size for self-hosted Discourse instances.

:person_raising_hand: Required user level: System Admin

The default attachment upload size limit is 10MB

If you are self-hosting Discourse and need to allow uploads larger than 10 MB, follow the steps below.

Changing the upload size

  1. Connect to your server:
  • Use SSH to access your server’s command line interface.
  1. Edit the configuration file:
  • Navigate to the configuration directory and edit the app.yml file:
cd /var/discourse/
nano containers/app.yml
  1. Modify the upload parameters:
  • Look for the section labeled params. Directly below, add your desired upload size with careful attention to formatting:
params:
  ## Which Git revision should this container use? (default: latest)
  version: latest
  ## Maximum upload size (default: 10m)
  upload_size: 20m
  1. Save your changes:
  • Press Ctrl+X to exit, then Y to confirm, and Enter to save the changes.
  1. Rebuild the Discourse instance:
  • Run the following command from the /var/discourse directory:
./launcher rebuild app
  1. Update site settings:
  • Go to /admin/site_settings/category/files in your Discourse dashboard.
  • Adjust the max attachment size kb to 20480 (for 20 MB) or your preferred size.

Last edited by @david 2025-09-29T13:05:48Z

Check documentPerform check on document:
62 Me gusta

¿Por qué el mensaje de error es incorrecto? Aquí está mi mensaje de error.

Mientras intentaba subir un archivo de 10 MB. El mensaje de error es incorrecto.

3 Me gusta

¿Qué tipo de archivo era? ¿Puedes subir otros archivos a ese sitio?

A veces hay problemas del navegador durante el proceso de carga que causan problemas temporales. Intenta subir tu archivo de nuevo, en una nueva sesión del navegador.

2 Me gusta

¿Este artículo no se ha actualizado en mucho tiempo? ¿Por qué no puedo encontrar “upload_size: 20m”???

2 Me gusta

La primera publicación se actualizó hace 5 días

La guía dice que necesitas agregar esa línea. Así que, antes de agregarla, no la encontrarás. Agregué algo de formato en la cita a continuación. ¿Eso te ayuda?

9 Me gusta

¿también afecta la configuración del tamaño máximo de imagen en KB?

1 me gusta

Sí, afecta a cualquier tipo de carga.

Más específicamente, creo que la configuración upload_size de app.yml se proporciona a nginx como client_max_body_size, que es el mismo parámetro proporcionado en las descripciones de las dos configuraciones del sitio:

Tamaño máximo de imagen KB El tamaño máximo de carga de imágenes. Esto también debe configurarse en nginx (client_max_body_size) / apache o proxy. Las imágenes más grandes que esto y más pequeñas que client_max_body_size se redimensionarán para que quepan al cargarlas.
Tamaño máximo de archivo adjunto KB El tamaño máximo de carga de archivos adjuntos. Esto también debe configurarse en nginx (client_max_body_size) / apache o proxy.
4 Me gusta

Esta configuración ahora permite introducir MB directamente:

image

¿Quizás la configuración necesita un cambio de nombre y el texto anterior debe actualizarse?

A menos que algo haya cambiado, lo que hace este cambio en el yml es cambiar el tamaño máximo que permite Discourse. Es decir, el tamaño máximo disponible en la experiencia de usuario es de 10 MB. Esto te permite aumentar ese máximo cambiando algunas cosas en los archivos de configuración de nginx.

Lo que quise decir fue que ya no necesitas ingresar kb en la configuración del sitio, no que la funcionalidad hubiera cambiado.

Aunque sería bueno si la configuración del sitio simplemente reflejara lo que estaba en el YML sin necesidad de una configuración separada.

1 me gusta

Creo que aunque la entrada del usuario permite usar MB también, el valor siempre se guarda en KB.

Para mí, los nombres de configuración no son información para el usuario, sino más bien un término técnico para identificar la configuración. No son traducibles, por lo que los administradores que usan Discourse en un idioma diferente no necesariamente los entenderán en absoluto. Y la configuración de Discourse también debería funcionar para ellos. Por lo tanto, la descripción debe ser lo suficientemente buena por sí sola.
Quizás los usuarios de habla inglesa también deberían usar esa perspectiva e ignorar el nombre de la configuración, centrándose más en la descripción. Entonces no te confundiría el nombre.

1 me gusta

Pero podrías, por ejemplo, tener una instancia multisitio y algunos sitios quieren menos que el máximo teórico. Esa es al menos parte de la razón por la que hay dos configuraciones.

1 me gusta

¿Qué tal si mejoramos el texto de la descripción de esa configuración y enlazamos a este tema en ella?
Creo que eso haría las cosas mejores para todos.

1 me gusta