簡體   English   中英

ngnix + gunicorn拋出截短的響應體

[英]ngnix + gunicorn throws truncated response body

我通過一些網址請求一些json數據,有時它工作正常,有時卻不起作用。我在這里查看了另一個相關提示,但似乎建議不要通過中間件更改內容長度...我的json數據不完整是作為圖像下面顯示:

在此處輸入圖片說明

我的應用程式nginx設定:

server {
    listen 80;
    server_name myapp.com;

    access_log /var/log/nginx/myapp_access.log;
    error_log /var/log/nginx/myapp_error.log;

    location / {
    client_max_body_size 400M;
    proxy_read_timeout 120;
        proxy_connect_timeout 120;
    proxy_set_header Host $http_host; 
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Client-IP $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_pass http://127.0.0.1:8888;
    }
}

古尼康腳本:

#!/bin/bash
set -e
DJANGODIR=/home/ubuntu/apps/myapp

LOGFILE=/var/log/gunicorn/myapp.log
LOGDIR=$(dirname $LOGFILE)
NUM_WORKERS=3
# user/group to run as
USER=ubuntu
GROUP=ubuntu
cd /home/ubuntu/apps/myapp
source /home/ubuntu/.venv/myapp/bin/activate

export PYTHONPATH=$DJANGODIR:$PYTHONPATH

export NEW_RELIC_CONFIG_FILE=/home/ubuntu/newrelic/newrelic.ini

test -d $LOGDIR || mkdir -p $LOGDIR
exec /usr/local/bin/newrelic-admin run-program /home/ubuntu/.venv/myapp/bin/gunicorn_django -w $NUM_WORKERS \
  --user=$USER --group=$GROUP --log-level=debug \
  --log-file=$LOGFILE -b 127.0.0.1:8888 2>>$LOGFILE

好吧……我在這里找到一個相關的問題,並添加了proxy_buffering off; 配置文件,這解決了我的情況下的問題。

該文件如下:

server {
    listen 80;
    server_name myapp.com;

    access_log /var/log/nginx/myapp_access.log;
    error_log /var/log/nginx/myapp_error.log;

    location / {
        client_max_body_size 400M;
        proxy_read_timeout 120;
        proxy_connect_timeout 120;
        proxy_set_header Host $http_host; 
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Client-IP $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_pass http://127.0.0.1:8888;
        proxy_buffering off;
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM