PDF-Download nicht möglich

Hello Team,

I am using the server local storage for storing the files. I have uploaded a pdf file and it was successfully uploaded in the server and, it’s present at the server as well ( I checked it manually by doing ssh login ).

That’s the screenshot of error getting raised when I am trying to download the pdf file.

This is the log of the download event

[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)

What could be the error ? :-/

If you didn’t upload the file with discourse you will need to change the nginx config inside the container. It’s not set up to server arbitrary files in arbitrary directories.

The screenshot looks like it was uploaded using discourse, but the URL path looks like a tidied short url rather than the real thing?

Can you try uploading that pdf to try.discourse.org and see if it works there? Maybe you have an issue with that specific file?

I guess uploading other types of files works?

Well, I am unable to upload the file without any issues but it’s now allowing me download the file.

I uploaded the file using Discourse message box and it uploaded successfully but I am not able to download it.

Yes @Stephen, I am able to upload the file smoothly using my discourse but, it’s not allowing me to download. :frowning:

Please have a look at this screenshot, It’s having a download button. When I tried click on it, I am not able to download.

That’s the error raised when I tried to download the image using download button. ( Download button probably using send_data ruby function )

I just want to undrestand that this is something wrong with NGINX or any other directories permission related issue.

Thanks

Ich habe das gleiche Problem erlebt. Die PDF-Datei wird hochgeladen, aber danach kann man sie nicht herunterladen und landet auf der Seite „Diese Seite existiert nicht"!

Ich habe es getestet und konnte hier auf Meta problemlos eine PDF hoch- und herunterladen.

Update: Ich habe einige Änderungen versucht und vermute, dass dies eher ein bug im Zusammenhang mit anderen Sprachen als mit Englisch ist.

Ich musste die PDF mit einem englischen Namen neu erstellen (zuvor enthielt der Dateiname persische Zeichen). Danach konnte die hochgeladene Datei problemlos heruntergeladen werden.

Außerdem konnte die PDF-Datei mit dem persischen Namen hier auf Meta problemlos hoch- und heruntergeladen werden. Ich vermute also, dass es mit der Codierungsoption im Admin-Bereich zu tun hat.

Hallo Team,

Entschuldigt, dass ich so spät antworte, aber ich habe mein Problem behoben, indem ich Änderungen in der nginx.conf-Datei vorgenommen habe. Es war eine sehr einfache Lösung und bezog sich auf die nginx.conf (und ich habe versucht, den Core-Code zu reparieren :smiley:).

Ich habe diese Zeile aus meiner nginx.conf entfernt:

 proxy_set_header X-Sendfile-Type X-Accel-Redirect;

Damit war das Herunterladen wieder möglich :slight_smile:

Ich werde ab jetzt öfter hier sein :slight_smile:

Vielen Dank,
Ashish P.