概要
画像をbase64にしてJSONに変換してサーバに送信し、MySQLにぶち込む。
エラーが出る。
413 Request Entity Too Large
413 Request Entity Too Largeとか
2016/10/03 08:48:09 [warn] 8080#0: *1 a client request body is buffered to a temporary file /var/cache/nginx/client_temp/0000000001, client: 10.0.2.2, server: local.vm, request: "POST / HTTP/1.1", host: "local.vm:8080", referrer: "http://local.vm:8080/"
2016/10/03 08:48:10 [error] 8080#0: *1 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 10.0.2.2, server: local.vm, request: "POST / HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fpm/php-fpm.sock:", host: "local.vm:8080", referrer: "http://local.vm:8080/"
対策
やばいのかもしれんが、nginxのconfにこれを書く。
# upload max size
client_max_body_size 20m;
client_body_buffer_size 20m;
それでも500とか502が出る
アプリ側のエラーメッセージに以下のようなものが。
Error while sending QUERY packet.
MySQLに送るデータの容量がでかいとこういうエラーが出るそうな。
対策
やばいのかもしれんが、my.cnfにこれを書く。
[mysqld]
max_allowed_packet=16MB
MySQLへのぶっこみに関しては、アプリで制御できるはずなので、こっちはあんまり怖くないかも。