更改最大的上传文件大小

我有一个网站托pipe在PC上,我没有访问。 我有一个上传表格,允许人们上传高达30MB的MP3文件。 我的服务器端脚本是在PHP中完成的。

每次尝试上传文件时,都会收到一个错误,声称文件超出了允许的最大大小,所以我需要增加大小。 我在网上的研究build议改变我没有访问的.htaccess文件,所以这是行不通的。 其他人build议我应该添加一个自定义的php.ini文件到我的根没有工作。 还有其他build议吗?

您需要在php.ini中设置upload_max_filesizepost_max_size的值:

 ; Maximum allowed size for uploaded files. upload_max_filesize = 40M ; Must be greater than or equal to upload_max_filesize post_max_size = 40M 

修改php.ini文件后,您需要重新启动HTTP服务器才能使用新的configuration。

如果你不能改变你的php.ini,那你的运气不好。 您不能在运行时更改这些值; 如果上传的文件大于php.ini中指定的值,执行到达ini_set执行时间将失败。

请参阅核心php.ini指令的描述 。

你可以通过一个.htaccess文件来改变它。

.htaccess文件存储在您的.php文件所在的目录中。 他们修改该文件夹和所有子文件夹的configuration。 你只需在你select的目录中创build一个.htaccess文件来使用它们(或者修改它,如果存在的话)。

以下内容可以使您增加上传限制(如果服务器提供商允许通过.htaccess更改PHPconfiguration)。

 php_value upload_max_filesize 40M php_value post_max_size 42M 

我有同样的问题,我创build了一个.user.ini文件,并把它放在上传脚本所在的目录。 比那个文件里面我设置了这两个值:

  upload_max_filesize = 40M post_max_size = 40M 

这对我来说很好

你也可以使用ini_set函数 (只适用于5.3以下的PHP版本):

 ini_set('post_max_size', '64M'); ini_set('upload_max_filesize', '64M'); 

就像@acme所说的那样,在php 5.3及以上版本中这个设置是PHP_INI_PERDIR指令,所以不能用ini_set来设置。 你可以改用user.ini。

要findini文件,首先运行

 php -i | grep -i "loaded configuration file" 

然后打开文件并更改

 upload_max_filesize = 2M post_max_size = 2M 

用你想要的大小replace2M,例如100M。

我有一个博客文章了解更多信息http://www.seanbehan.com/how-to-increase-or-change-the-file-upload-size-in-the-php-ini-文件换WordPress的;

我在过去有同样的问题..我通过.htaccess文件修复它

当您通过.htaccess对php configration进行更改时,您应该将configuration放在IfModule标记中,否则内部服务器错误会上升

这就是例子,对我来说工作很好

 <IfModule mod_php5.c> php_value upload_max_filesize 40M php_value post_max_size 40M </IfModule> 

如果你想了解更多,这是PHP的参考。 http://php.net/manual/en/configuration.changes.php

我通过在PHP文件脚本所在的目录中创build一个名为.user.ini的文件解决了这个问题(这意味着此目录中的任何PHP脚本都会获得新的文件大小限制)

.user.ini的内容是:

 upload_max_filesize = 40M post_max_size = 40M 

那么,我想在这里加2分钱。

我使用共享虚拟主机,我多次解决这个问题,试图自己解决,但无济于事。 最后,我设法通过检查各种networking资源和联系我的托pipe服务提供商来解决它。 我的问题是“如何更改共享虚拟主机中的php值memory_limit ?”,“如何更改共享max_input_vars主机中的php值upload_max_filesize ?”,“如何更改共享max_input_vars主机中的php值max_input_vars ?”,“我如何更改php共享webhosting中的max_execution_time ?“,”如何在共享webhosting中更改php值max_input_time ?“ 以及更多通过configuration或更改php.ini或.htaccess文件。 我试图改变他们,但问题出现了。 最后,我联系了我的托pipe服务提供商,事实certificate,我把我的PHP本地,他们改变了PHP 5.6,这里是他们的答案:

“你的PHP被设置为'本地'模式,这意味着你不能覆盖这些值,我已经把你改成了'5.6',所以你应该好好去。

之后,我通过ftp Filezilla连接了我的网站,也不要忘了让你的ftp服务显示隐藏的文件,而你的本地计算机也这样做,因为.htaccess文件隐藏在我的本地笔记本电脑和我的网站中。 它在public_html文件夹中可用,我只是下载它,并将以下代码添加到文件的末尾,然后将其上传到服务器:

 php_value memory_limit 256M php_value post_max_size 256M php_value upload_max_filesize 64M php_value max_input_vars 1800 php_value max_execution_time 300 php_value max_input_time 300 

在这里输入图像描述

在这里输入图像描述

在这里输入图像描述

在这里输入图像描述

在这里输入图像描述

一切正常工作,如果你们有任何问题克服,请写在这里,并警告我,以便我可以改变上述代码。 顺便说一下,我也上传了一些图片,显示了变化。

还有一件事我几乎忘记了在你的共享主机服务上提到ZipArchive安装,我pipe理这个需求只需要通过我的cPanel去php设置,点击phpselect扩展,然后打勾zip部分,就是这样。

谢谢。

PS:我接受良好的做法,如果你看到任何不好的做法,请让我知道,我会尽量改变它们。 谢谢。

非这些解决scheme为我工作! (默认情况下已经设置为32M)。在大多数情况下,问题是max_allowed_packet

我在本地主机上工作,使用MAMP

这里是解决scheme;

1.如果你没有my.ini

 --max_allowed_packet=168435456 

 ...\MAMP\bin\startMysql.sh 

2.如果你有my.ini

 [mysqld] 

 max_allowed_packet=100M 

DONE!

我有同样的问题。 我尝试了三种通常build议的方法:

  1. 的functions.php
  2. php.ini中
  3. 的.htaccess

没有,如果这解决了我的问题。 我正在使用godaddy,并遇到了一个build议的解决scheme是:

  1. 进入虚拟主机 ,然后pipe理
  2. 软件下selectselectPHP版本
  3. 在字体颜色:蓝色的表格右上angularselect切换到PHP选项
  4. 在最下面的部分,你可能会有upload_max_filesize = 2M
  5. 现在,请随时更改
  6. 一定要点击保存button!
  7. 现在转到您的wp-admin面板,select媒体,然后添加

瞧! 现在你有一个不同的最大上传文件大小:)

你需要检查三件事情。

upload_max_filesizememory_limitpost_max_size完全在php.iniconfiguration文件中。

所有这三个设置限制了PHP可以提交和处理的数据的最大大小。

通常post_max_sizememory_limit需要大于upload_max_filesize


所以总共需要检查三个variables以绝对确定。

也许这应该是对@ seanb123和@Fredrick Gauss评论他的评论,但对于我在Drupal 8.1中,我需要修改的文件位于这里:

 /etc/php/7.0/apache2/php.ini 

我修改了其他四个php.ini文件,其中包括一个名为“Loaded Configuration File”(php -i | grep -i“加载的configuration文件”)的系统,以及info.php页面上find的文件,但是没有一个帮助。 我从2012年的一个网站上find了正确的path,在那里说path被弃用,甚至还没有。 当然,对于PHP7而言,它与当时所说的有些不同:/etc/php5/apache2/php.ini,但概念是一样的。

也许这会帮助一些像我自己一样无助的人。

话虽如此,在我的情况下,OP的答案将是有人在框上的pipe理员权限将不得不这样做。

帮助我的网站: http : //www.evilbox.ro/linux/remove-ispconfig-maximum-upload-size-of-2m-for-wordpress/

这也在这里解决: 在PHPMyAdmin中导入文件大小限制

很多时候我已经注意到,网站机智共享主机不允许更改php.ini文件中的设置。 一个也不能甚至包装.htaac​​cess文件。 在这种情况下,人们可以尝试跟随

 ini_set('upload_max_filesize', '10M'); ini_set('post_max_size', '10M'); ini_set('max_input_time', 300); ini_set('max_execution_time', 300);