Dokku(数字海洋)client_max_body_size node.js

Rob*_*Rob 3 nginx node.js digital-ocean dokku

所以我只是将我的应用程序推送到Dokku(数字海洋) - 并从ajax帖子返回以下错误:

POST http://example.com/foo 413(请求实体太大)

快速谷歌显示此问题是由于client_max_body_size太低.所以我已经通过SSH连接到服务器,打开了应用程序nginx.conf并按照说明增加了它:

client_max_body_size 100M;
Run Code Online (Sandbox Code Playgroud)

https://github.com/progrium/dokku/issues/802

但是,我仍然遇到同样的问题......我是否需要重启某个进程?我尝试重新启动dokku应用程序 - 但所有这一切都是为了覆盖我的nginx.conf文件.

Fel*_*lix 9

@Rob的答案是正确的,但是存在更改未持久存在的问题,因为nginx.conf可能会在部署时重新生成.

我使用的解决方案在此github提交https://github.com/econya/dokku/commit/d4ea8520ac3c9e90238e75866906a5d834539129中列出.

基本上,dokkus默认的nginx模板将nginx.conf.d/子文件夹中的每个文件都包含在主server配置块中

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
Run Code Online (Sandbox Code Playgroud)

只要您不使用干扰插件或定义另一个nginx模板(截至2017/08),将创建一个合并到nginx.conf(在我认为的nginx启动时)并保持不变dokku的文件.