node.js - Dokku( digital ocean )client_max_body_size node.js

标签 node.js nginx digital-ocean dokku

所以我刚刚将我的应用程序推送到 Dokku( digital ocean )- 并从 ajax 帖子返回以下错误:

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

快速谷歌显示这个问题是由于 client_max_body_size 太低造成的。所以我已经通过 SSH 进入服务器,打开应用程序 nginx.conf 并按照此处的说明增加它:

client_max_body_size 100M;

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

但是,我仍然有同样的问题......我需要重新启动进程还是什么?我尝试重新启动 dokku 应用程序 - 但所做的只是覆盖我的 nginx.conf 文件。

最佳答案

@Rob 的回答是正确的,但问题是更改不会持久化,因为 nginx.conf 可能会重新生成,例如部署时。

我使用的解决方案在这个 github commit https://github.com/econya/dokku/commit/d4ea8520ac3c9e90238e75866906a5d834539129 中有概述。 .

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

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.conf 中的文件(我相信在 nginx 启动时)并且只要你不使用干扰就不会被 dokku 触及插件或定义另一个 nginx 模板(截至 2017/08)。

关于node.js - Dokku( digital ocean )client_max_body_size node.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32127554/

相关文章:

nginx: [emerg] "server"指令在/etc/nginx/nginx.conf:98 中是不允许的

php - Docker 没有 MySQL 连接到 Nginx

python - 如何将 Wordpress 放在 Heroku 上运行的 Flask 应用程序的/blog 目录中

python - 连接到安装在不同服务器上的 MongoDb DB

git - 如何将我的 git 存储库推送到 dokku?

javascript - Node.js:计算文件中的行数

node.js - 为什么 socket.io 使用不同的路径创建第二个 'sid' cookie?

node.js - 无法在 Heroku 中查看 Express/React 应用程序(同时未找到)

ssh - BitBucket Pipeline ssh 到 Digital Ocean 权限被拒绝(公钥)

javascript - 为什么当我需要全局数组索引时未定义它?