Dokku (Digital Ocean) client_max_body_size node.js
因此,我刚刚将我的应用程序推送到了Dokku(数字海洋)-并从ajax帖子返回了以下错误:
POST http://example.com/foo 413(请求实体太大)
一个快速的谷歌显示此问题是由于client_max_body_size太小。因此,我已通过SSH进入服务器,打开了应用程序nginx.conf并按照此处的说明进行了添加:
1 | client_max_body_size 100M; |
https://github.com/progrium/dokku/issues/802
但是,我仍然遇到相同的问题...是否需要重新启动进程或其他操作?我尝试重新启动dokku应用程序-但所有这些都是为了覆盖我的nginx.conf文件。
@Rob的答案是正确的,但存在以下问题:更改不会持久化,因为nginx.conf可能会重新生成,例如部署时。
此github提交中概述了我使用的解决方案https://github.com/econya/dokku/commit/d4ea8520ac3c9e90238e75866906a5d834539129。
基本上,dokkus默认的nginx模板将
1 2 3 4 | mkdir /home/dokku/myapp/nginx.conf.d/ echo 'client_max_body_size 50M;' > /home/dokku/myapp/nginx.conf.d/upload.conf chown dokku:dokku /home/dokku/myapp/nginx.conf.d/upload.conf service nginx reload |
只要您不使用干扰性插件或定义其他nginx模板(自2017/08起),就会创建一个文件并入
我想通了-我必须cd进入apps目录(按照github的说明:https://github.com/progrium/dokku/issues/802
The right file to modify is /home/dokku//nginx.conf and as @dipankar mentioned, you should add a client_max_body_size 20M; line to the server scope.
然后我键入
1 | reload nginx |
进入命令行。所有作品:)