>我正在尝试在我的服务器上上传 30MB 的文件,但它不起作用。
-
当我上传 30MB 文件时,页面加载">找不到页面">
-
当我上传一个 3MB 的文件时,我收到带有 nginx/0.6.32 的">413 请求实体太大">
我正在尝试找到nginx,以便我可以增加">client_max_body_size",但我无法找到安装在服务器上的nginx。我什至尝试跑步:
vi /etc/nginx/nginx.conf
或
vi /usr/local/nginx/conf/nginx.conf
检查配置文件是否存在,但我在我的服务器上找不到它。
有没有办法解决这个问题?还是我必须在我的服务器上安装 nginx。
编辑:
我已经在我的 php.ini 文件中进行了所有必要的更改,
post_max_size 128M
upload_max_filesize 100M
memory_limit 256M
谢谢Raju
来源:cybercity
编辑 nginx 的 conf 文件:
nano /etc/nginx/nginx.conf
在http
、server
或location
部分中添加一行:
client_max_body_size 100M;
不要使用MB
它不起作用,只有 M!
另外不要忘记重新启动nginx:
systemctl restart nginx
(在/etc/php.ini 内部(
max_input_time = 24000
max_execution_time = 24000
upload_max_filesize = 12000M
post_max_size = 24000M
memory_limit = 12000M
-in nginx.conf(inside/opt/nginx/conf(
client_max_body_size 24000M
它为我的情况工作
首先编辑 Nginx 配置文件 ( nginx.conf
(
位置: sudo nano /etc/nginx/nginx.conf
添加以下代码:
http {
client_max_body_size 100M;
}
然后在PHP配置文件中添加以下行(php.ini
(
位置: sudo gedit /etc/php5/fpm/php.ini
添加以下代码:
memory_limit = 128M
post_max_size = 20M
upload_max_filesize = 10M
sudo nano /etc/nginx/nginx.conf
然后在 http 部分添加一行
http {
client_max_body_size 100M;
}
不要只使用 MB M。
systemctl restart nginx
然后对于 PHP 位置
sudo gedit /etc/php5/fpm/php.ini
目前最多使用 PHP 7.0 或更高版本
sudo nano /etc/php/7.2/fpm/php.ini //7.3,7.2 or 7.1 which php you use
检查那些根据您的意愿增加的.
memory_limit = 128M
post_max_size = 20M
upload_max_filesize = 10M
重新启动 php-fpm
service php-fpm restart
我将更改直接添加到我的虚拟主机而不是nginx的全局配置中,如下所示:
server {
client_max_body_size 100M;
...
}
然后我更改了 php.ini 中的参数,如上面的评论:
max_input_time = 24000
max_execution_time = 24000
upload_max_filesize = 12000M
post_max_size = 24000M
memory_limit = 12000M
而你忘不了的是重启 nginx 和 php-fpm,在 CentOS 7 中是这样的:
systemctl restart nginx
systemctl restart php-fpm
请输入域名nginx文件:
nano /etc/nginx/sites-available/domain.set
添加到文件此代码
client_max_body_size 24000M;
如果收到错误,请使用此命令
nginx -t
我遇到了同样的错误,并按照以下步骤修复了它。
-
首先,编辑 nginx.conf 文件。
vi /etc/nginx/nginx.conf
在 HTTP 部分,添加了以下行。
http {
client_max_body_size 100M;
}
- 最后使用以下命令重新启动 Nginx。
systemctl restart nginx
假设您在 php.ini 文件中进行了必要的更改:
您可以通过在以下路径中找到的 nginx.conf 文件中添加以下行来解决此问题:
/etc/nginx/nginx.conf
然后使用 VIM 文本编辑器编辑文件,如下所示:
vi /etc/nginx/nginx.conf
并添加具有足够大值的client_max_body_size,例如:
client_max_body_size 20MB;
之后,请确保使用:xi
或:wq
进行保存
然后重新启动你的nginx。
就是这样。
为我工作,希望这有帮助。
我上传了上述更改。但是当我进行更改时,我开始在文件上传中获得 404 响应,这导致我进行进一步调试,并通过检查 nginx 错误发现这是一个权限问题.log
溶液:
在/var/lib/nginx 上检查当前用户和组的所有权。
$ ls -ld /var/lib/nginx
drwx------. 3 nginx nginx 17 Oct 5 19:31/var/lib/nginx
这表明一个名为nginx的用户和组可能不存在,拥有此文件夹。这会阻止文件上传。
就我而言,"/etc/nginx/nginx.conf"中提到的用户名是
user vagrant;
在这种情况下,将文件夹所有权更改为nginx.conf中定义的用户。
$ sudo chown -Rf vagrant:vagrant /var/lib/nginx
验证它是否确实已更改。
$ ls -ld /var/lib/nginx
drwx------. 3 vagrant vagrant 17 Oct 5 19:31 /var/lib/nginx
重新加载nginx和php-fpm以获得更安全的sade。
$ sudo service nginx reload
$ sudo service php-fpm reload
权限被拒绝错误现在应该消失了。检查错误.log(基于 nginx.conf error_log位置(。
$ sudo nano /path/to/nginx/error.log
任何寻找 Apache2(对我来说是 Ubuntu 18(解决方案的人都可以编辑:
/etc/apache2/apache2.conf
并查找/编辑该行:
LimitRequestBody 7000000 #7mb
只需打开此文件并---
sudo vim /etc/nginx/nginx.conf
在 http、服务器或位置部分添加一行:
client_max_body_size 100M;
然后通过以下命令检查nginx是否正常
sudo nginx -t
如果一切看起来都很好,那么你会得到
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
然后重新启动nginx
sudo systemctl restart nginx
我希望你的目的得到满足:)
就我而言,我使用 nginx 和 letsencrypt 在我的 Spring 启动应用程序前面放置一个 ssl 层。
将clint_max_body_size属性放在"/etc/nginx/nginx.conf"中对我不起作用。相反,我将此属性放在特定于站点的 conf 文件中。
sudo nano/etc/nginx/sites-available/mywebsite.com
server {
...
client_max_body_size 3M;
...
}
保存上述内容后,重新启动nginx服务器,它工作了!
须藤服务 nginx 停止
须藤服务 nginx 启动
打开文件/etc/nginx/nginx.conf
添加或更改client_max_body_size 0;
使用:
php -i
命令或添加:
phpinfo();
以获取配置文件的位置。
根据您的需要和服务器更新这些变量
max_input_time = 24000
max_execution_time = 24000
upload_max_filesize = 12000M
post_max_size = 24000M
memory_limit = 12000M
在Linux上,您需要重新启动nginx/apache和phpfpm服务,以便加载新的ini设置。在 xampp 上,ammps 您可以从此类应用程序附带的控制面板重新启动这些。
首先需要注意响应状态码:
如果它是由 php 返回的,那么你需要更改:
在任一"/etc/php/
如果它是由nginx返回的,那么你需要在网站的.conf文件中添加"client_max_body_size 22M;"指令。
如果它是由 Modsecurity 返回的,那么你需要将/etc/nginx/modsec/modsecurity.conf 文件中的 "SecRequestBodyLimit" 指令更改为类似 "SecRequestBodyLimit 23068672" (它以字节为单位(