我在数字海洋上使用Rails和Nginx并且我一直在尝试上传一个17.6 MB的文件,即使在我的/etc/Nginx/Nginx.conf文件中设置了client_max_body_size 100M之后我仍然得到413请求实体太大.
这是文件的片段:
http {
##
# Basic Settings
##
client_max_body_size 100M;
sendfile on;
tcp_nopush on;
...
}
设置完之后我使用了sudo服务Nginx reload.当这不起作用我甚至完成了使用sudo shutdown -r完全重新启动,然后封面生产puma:从我的本地机器启动.我也尝试过client_max_body_size 0;根据我的理解,应该完全禁用文件大小的检查.什么都行不通.此外,在达到这一点时,我在client_max_body_size语句的位置上犯了一些错误,并且在那些情况下服务器无法正确启动出现“出错”错误,所以我很确定这些更改我我正在做正确的文件.
有什么我可能会失踪?还有另一个地方我缺少配置这个吗?我正在配置它的方式中是否有一些我遗漏的东西?任何指针都将非常感激.
最佳答案
好的.我想出来了.按照how to configure nginx的Digital Ocean指南,我在文件/etc/Nginx/Nginx.conf中设置了client_max_body_size 100M.当然,改变那里的东西肯定会影响服务器的功能.特别是当我在那个文件中弄乱一些东西并且服务器停止运行时.
但是,我忘记了在Deploying a Rails App on Ubuntu 14.04 with Capistrano,Nginx,and Puma这是我设置服务器的主要资源,它显示这些参数不是在上面的Nginx.conf中设置的,而是在我的rails应用程序中有文件〜/ my_app / config / Nginx.conf,其中的设置参数已包含该语句
client_max_body_size 10M;