私はLaravel(5.4)を使用して、V3からVimeoおよびYoutubeビデオをアップロードするWebアプリケーションを作成しています。これまで、Forgeに移行する前に、このスクリプトは正しく動作しましたが、今日でも小さなファイルでも正しく動作します。502 NGゲートウェイ(NGINX、Laravel Forge)を使ったAJAX経由のvimeoアップロード
大きなファイル(〜1GB)をアップロードしようとしているので、PHPのアップロードスクリプトの1分後に502のバッドゲートウェイを受け取りました。残りのアプリケーションはうまく動作します。私が試してみました
2017/04/24 20:36:48 [error] 2111#2111: *1 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: X.X.X.X.X, server: myserver.com, request: "POST /recordings/vimeo/upload HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.1-fpm.sock:", host: "myserver.com", referrer: "http://myserver.com/recordings"
:
- は、PHP
- PROXY_を追加することににoutput_buffering増額nginxの設定ファイル
- に/編集のFastCGIディレクティブを追加
具体的には、ここにエラーがありますand client_max_body以下の項目:
は私のnginxの設定ファイルです:
include forge-conf/myserver.com/before/*;
server {
listen 80;
listen [::]:80;
server_name .myserver.com;
root /home/forge/myserver.com/public;
# FORGE SSL (DO NOT REMOVE!)
# ssl_certificate;
# ssl_certificate_key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'hidden for SO';
ssl_prefer_server_ciphers on;
ssl_dhparam /etc/nginx/dhparams.pem;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block";
add_header X-Content-Type-Options "nosniff";
index index.html index.htm index.php;
charset utf-8;
include forge-conf/myserver.com/server/*;
location/{
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
access_log off;
error_log /var/log/nginx/myserver.com-error.log error;
error_page 404 /index.php;
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
fastcgi_index index.php;
fastcgi_read_timeout 3600;
fastcgi_buffers 8 512k;
fastcgi_buffer_size 512k;
include fastcgi_params;
client_max_body_size 128M;
proxy_buffer_size 256k;
proxy_buffers 4 512k;
proxy_busy_buffers_size 512k;
}
location ~ /\.ht {
deny all;
}
}
include forge-conf/myserver.com/after/*;
私は何をしないのですか?私はこれを全く理解していないようです。事前にお手伝いいただきありがとうございます。
私はupwork上でこのトピックへのあなたの参照を見て、そこに適用されます。いずれにせよ、あなたの問題は、nginxの設定ではなくPHPの設定にあります。 PHPアップロードファイルの制限が> 1024Mを超えていなければなりません。十分なRAMがあり、nginxとphpの両方でタイムアウトが十分に大きくなければなりません。 – peixotorms