Estou usando o armazenamento local do servidor para armazenar os arquivos. Enviei um arquivo PDF e ele foi enviado com sucesso para o servidor, e também está presente no servidor (verifiquei manualmente fazendo login via SSH).
Essa é a captura de tela do erro que ocorre quando tento baixar o arquivo 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)
Se você não fez o upload do arquivo com o Discourse, precisará alterar a configuração do Nginx dentro do contêiner. Ele não está configurado para servir arquivos arbitrários em diretórios arbitrários.
Esse é o erro que apareceu quando tentei baixar a imagem usando o botão de download. (O botão de download provavelmente está usando a função Ruby send_data.)
enfrentei o mesmo problema. O arquivo PDF foi carregado, mas não é possível baixá-lo e a página exibe a mensagem “esta página não existe”!
Fiz testes e consegui carregar e baixar um PDF facilmente aqui no Meta.
Atualização: Fiz algumas alterações e acredito que isso seja mais um bug relacionado a outros idiomas, e não ao inglês.
Precisei recriar o PDF com um nome em inglês (anteriormente, o nome do arquivo continha caracteres em persa). Após isso, o carregamento e o download funcionaram sem problemas.
Além disso, o arquivo PDF com o nome em persa pôde ser carregado e baixado facilmente aqui no Meta. Portanto, acredito que isso tenha a ver com a opção de Codificação no painel de administração.
Desculpe, estou respondendo muito atrasado, mas resolvi meu problema fazendo alterações no arquivo nginx.conf. Foi uma correção muito simples e estava relacionada ao nginx.conf (e eu estava tentando corrigir o código principal ).