10

nginxでphusion-passengerを使用してrails3.0.7プロジェクトを実行しています。処理に約15分かかったajaxを実行していました。ajaxを呼び出してから10分後に「504 Gateway Time-out」というfirebugのエラーが発生します。

どうすれば問題を見つけることができるか、誰かが教えてくれませんか。

ありがとう、ベン

環境

  • OS:マックOSX 10.6.7
  • ruby: rvm でインストールされた 1.9.2p180
  • 宝石: 1.6.2
  • 乗客 3.0.7
  • レール: 3.0.7
  • mysql:brew でインストールされた 5.5.10
  • nginx: passender でインストールされた 1.0.0 スタンドアロン
4

4 に答える 4

7

これは nginx のタイムアウト エラーです。タスクを完了するのに 10 分以上かかる場合は、次の記事を参照して、タイムアウトを回避するためにどのパラメーターを調整する必要があるかを確認してください。

nginx でゲートウェイのタイムアウトを防ぐにはどうすればよいですか

于 2011-08-11T14:33:40.703 に答える
5

Mac OS X (Yosemite) の Rails 4 でも同様の問題がありました。そのため、以下を特定の Nginx の場所に追加しました。

proxy_connect_timeout 43200000;
proxy_read_timeout    43200000;
proxy_send_timeout    43200000;

したがって、Nginxの全体的な構成は次のとおりです。

location /my_sub_path/ {
    root /my/rails/project/public/folder/path

    proxy_http_version 1.1;
    chunked_transfer_encoding off;
    proxy_buffering off;
    proxy_cache off;

    proxy_connect_timeout 43200000;
    proxy_read_timeout    43200000;
    proxy_send_timeout    43200000;

    proxy_redirect     off;
    proxy_set_header   Host             $http_host;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-Proto $scheme;
    proxy_pass http://127.0.0.1:3000/;
}
于 2016-03-31T05:53:54.270 に答える
-1

Phusion-passenger からの問題です。ファイルを変更する必要があります:(gems > Passenger-3.0.18 > ext > nginx > Configuration.c)

ngx_conf_merge_msec_value(conf->upstream_config.send_timeout,
                          prev->upstream_config.send_timeout, 6000000);

ngx_conf_merge_msec_value(conf->upstream_config.read_timeout,
                          prev->upstream_config.read_timeout, 6000000);

オリジンのタイムアウトは 600000 で、わずか 10 分です。nginx.conf を変更しようとしましたが、うまくいきませんでした。

于 2013-03-26T01:48:53.903 に答える
-6

これは nginx のタイムアウト エラーです。

于 2013-03-22T06:14:52.577 に答える