我有一个网站托管在我无法访问的PC上。我有一个上传表单,允许人们上传最大30MB的mp3文件。我的服务器端脚本是用PHP完成的。
每次我尝试上传文件时,都会收到一个错误,声称文件超过了允许的最大大小,因此我需要增加大小。我在网络上的研究建议更改。htaccess文件,我没有访问权限,所以这将不起作用。其他人建议我添加一个自定义的php.ini文件到我的根目录,但这并不奏效。还有其他建议吗?
我有一个网站托管在我无法访问的PC上。我有一个上传表单,允许人们上传最大30MB的mp3文件。我的服务器端脚本是用PHP完成的。
每次我尝试上传文件时,都会收到一个错误,声称文件超过了允许的最大大小,因此我需要增加大小。我在网络上的研究建议更改。htaccess文件,我没有访问权限,所以这将不起作用。其他人建议我添加一个自定义的php.ini文件到我的根目录,但这并不奏效。还有其他建议吗?
当前回答
如果你编辑了正确的php.ini文件,重新启动Apache或Nginx仍然不能工作,那么你必须重新启动php-fpm:
sudo service php-fpm restart
其他回答
我通过在PHP文件脚本所在的目录中创建一个名为.user.ini的文件解决了这个问题(这意味着该目录中的任何PHP脚本都得到了新的文件大小限制)
.user.ini的内容是:
upload_max_filesize = 40M
post_max_size = 40M
我有同样的问题,我创建了一个.user.ini文件,并把它放在上传脚本所在的目录中。然后在文件中我设置了这两个值:
upload_max_filesize = 40M
post_max_size = 40M
这对我来说非常有效!
我知道这个问题有很多答案,但在php.ini中,大多数变量只用于更改最大上传文件大小
由于有时用户更新了最大文件大小,但没有更新内存限制,导致中断导入过程。
因此,我在这里列出了所有需要更改的相关变量以及最大文件大小
max_execution_time memory_limit display_errors post_max_size upload_max_filesize max_input_time
注意:从现在开始,ini存储在这样的文件夹中 /etc/php/8.1/apache2/php.ini
打开php.ini文件。 在php.ini中搜索关键字,如upload_max_filesize。 然后改变文件的大小。 upload_max_filesize = 400M 需要更改最大张贴值。 post_max_size = 400M
我也有这个问题,并通过在/etc/nginx/nginx.conf中设置这个设置来修复它
client_max_body_size 0;
0,即无限。
此外,如果你有一个反向代理运行nginx,服务器也应该有这个设置(这是我在这里抛出的)