Estoy utilizando el almacenamiento local del servidor para guardar los archivos. He subido un archivo PDF y se subió correctamente al servidor; además, está presente en el servidor (lo verifiqué manualmente iniciando sesión por SSH).
Esta es la captura de pantalla del error que se produce cuando intento descargar el archivo PDF.
[discourse_cloud] Started GET "/uploads/short-url/ev4yCeBAtz19YgsTSEkhLMkKrFK.pdf" for 122.168.93.128 at 2019-12-24 09:16:40 +0000
[discourse_cloud] Processing by UploadsController#show_short as PDF
[discourse_cloud] Parameters: {"base62"=>"ev4yCeBAtz19YgsTSEkhLMkKrFK", "extension"=>"pdf"}
[discourse_cloud] Sent file /home/deploy/discourse_cloud/releases/20191220210316/public/uploads/discourse_cloud/original/1X/65a1a66f4bddc09fbdab830a8c74c7fbe05cca98.pdf (0.2ms)
[discourse_cloud] Completed 200 OK in 11ms (ActiveRecord: 0.0ms)
[discourse_cloud] Started GET "/home/deploy/discourse_cloud/releases/20191220210316/public/uploads/discourse_cloud/original/1X/65a1a66f4bddc09fbdab830a8c74c7fbe05cca98.pdf" for 122.168.93.128 at 2019-12-24 09:16:40 +0000
[discourse_cloud] ActionController::RoutingError (No route matches [GET] "/home/deploy/discourse_cloud/releases/20191220210316/public/uploads/discourse_cloud/original/1X/65a1a66f4bddc09fbdab830a8c74c7fbe05cca98.pdf")
/home/deploy/discourse_cloud/shared/bundle/ruby/2.6.0/gems/actionpack-5.2.3/lib/action_dispatch/middleware/debug_exceptions.rb:65:in `call'
[discourse_cloud] Rendering exceptions/not_found.html.erb within layouts/no_ember
[discourse_cloud] Rendered exceptions/not_found.html.erb within layouts/no_ember (0.6ms)
[discourse_cloud] Rendered layouts/_head.html.erb (1.0ms)
[discourse_cloud] Rendered common/_discourse_stylesheet.html.erb (0.6ms)
[discourse_cloud] Rendered application/_header.html.erb (0.1ms)
[discourse_cloud] Rendering html template
[discourse_cloud] Rendered html template (0.0ms)
Si no has subido el archivo con Discourse, necesitarás cambiar la configuración de nginx dentro del contenedor. No está configurado para servir archivos arbitrarios en directorios arbitrarios.
Este es el error que surgió cuando intenté descargar la imagen usando el botón de descarga. (El botón de descarga probablemente usa la función Ruby send_data)
He enfrentado el mismo problema. Se sube el archivo PDF, pero luego no se puede descargar y se va a la página de «esta página no existe».
Lo probé y pude subir y descargar un PDF fácilmente aquí en Meta.
Actualización: Probé algunos cambios y creo que esto es más bien un bug relacionado con otros idiomas y no con el inglés.
Tuve que volver a crear el PDF con un nombre en inglés (anteriormente teníamos caracteres persas en el nombre del archivo). Después de eso, la subida se puede descargar sin ningún problema.
Además, el archivo PDF con el nombre en persa se podía subir y descargar fácilmente aquí en Meta. Así que creo que tiene algo que ver con la opción de codificación en el panel de administración.
Lo siento, he tardado mucho en responder, pero solucioné mi problema realizando cambios en el archivo nginx.conf. Fue una solución muy sencilla y estaba relacionada con nginx.conf (y yo estaba intentando arreglar el código principal ).