Я использую локальное хранилище сервера для сохранения файлов. Я загрузил PDF-файл, и он успешно загрузился на сервер, а также присутствует на сервере (я проверил это вручную, выполнив вход по SSH).
Это скриншот ошибки, возникающей при попытке загрузить 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)
Если вы не загрузили файл через Discourse, вам нужно изменить конфигурацию nginx внутри контейнера. По умолчанию он не настроен на обслуживание произвольных файлов из произвольных каталогов.
Столкнулся с той же проблемой. Файл PDF загружается, но затем его невозможно скачать — открывается страница «Эта страница не существует»!
Я протестировал и легко загрузил и скачал PDF здесь, на Meta.
Обновление: Я внес несколько изменений и думаю, что это, скорее всего, #баг, связанный с другими языками, а не с английским.
Мне пришлось переименовать PDF на английский язык (раньше в имени файла были персидские символы). После этого загрузку можно было скачать без каких-либо проблем.
Кроме того, PDF-файл с персидским именем можно было легко загрузить и скачать здесь, на Meta. Так что, похоже, дело в настройке кодировки в панели администратора.
Извините, что так поздно отвечаю, но я решил свою проблему, внес изменения в файл nginx.conf. Это было очень простое исправление, и оно касалось файла nginx.conf (а я пытался исправить основной код ).