私は誰かがこれについていくつかの光を当てることができると思っています。 wicked_pdfライブラリを使用してPDFを生成するRails 2アプリがあります。私たちはnginxによってプロキシされたユニコーンの下でアプリケーションを実行しています。NginxでプロキシしたときにPDFがRailsアプリから配信されない
問題は、アプリケーションがPDFを提供しようとするたびに時間切れになり、nginxが404を報告するということです。ユニコーンポート経由でアプリをチェックしたので、うまく動作するので、ユニコーンとnginxの間で何か起こっていますこれは失敗する。
ログファイルには何も役立ちません。アプリケーションログはすべて正常に報告しますが、Sending data
行を出力しません。 nginxログは*443 upstream prematurely closed connection while reading response header from upstream, client
を報告します。
ユニコーンエラー・ログには、接続がタイムアウトして、労働者が殺されていることを報告しますが、PDFの生成は30秒かかりません。
worker=2 PID:14099 timeout (31s > 30s), killing
reaped #<Process::Status: pid=14099,signaled(SIGKILL=9)> worker=2
worker=2 ready
私たちはnginxの中に何かを見逃しているように私は感じますサイトの設定がわかりますが、どこから探し始めるか分かりません。
私はnginxの設定ファイル以下に含まました:
server {
listen *:80;
server_name server_name.example.com;
root /var/apps/application/current/public;
try_files /system/maintenance.html $uri $uri/index.html @app;
location @app {
proxy_pass http://unix:/tmp/application.sock;
proxy_set_header Host $http_host;
}
error_page 404 400 500 502 /error.html;
location = /error.html {
root /var/www;
}
}
解決方法とconfファイルの詳細については、wkhtmltopdfと同じ問題があります –