我有一个网站托管在我无法访问的PC上。我有一个上传表单,允许人们上传最大30MB的mp3文件。我的服务器端脚本是用PHP完成的。
每次我尝试上传文件时,都会收到一个错误,声称文件超过了允许的最大大小,因此我需要增加大小。我在网络上的研究建议更改。htaccess文件,我没有访问权限,所以这将不起作用。其他人建议我添加一个自定义的php.ini文件到我的根目录,但这并不奏效。还有其他建议吗?
我有一个网站托管在我无法访问的PC上。我有一个上传表单,允许人们上传最大30MB的mp3文件。我的服务器端脚本是用PHP完成的。
每次我尝试上传文件时,都会收到一个错误,声称文件超过了允许的最大大小,因此我需要增加大小。我在网络上的研究建议更改。htaccess文件,我没有访问权限,所以这将不起作用。其他人建议我添加一个自定义的php.ini文件到我的根目录,但这并不奏效。还有其他建议吗?
当前回答
有了WAMP,一切都很简单
WAMP图标> PHP > PHP设置> upload_max_filesize = nM > n = (2M, 4M, 8M, 16M, 32M, 64M, 128M, 256M, 512M,或选择(自定义))。
服务自动重新加载。
但是,如果您确实没有访问服务器的权限,您可能想要尝试编写一个分块API。
下面是如何做到这一点的图片。
其他回答
要定位ini文件,首先运行
php -i | grep -i "loaded configuration file"
然后打开文件并更改
upload_max_filesize = 2M
post_max_size = 2M
将2M替换为你想要的大小,例如100M。
我有一篇博客文章,有更多的信息http://www.seanbehan.com/how-to-increase-or-change-the-file-upload-size-in-the-php-ini-file-for-wordpress
我过去也遇到过同样的问题。我通过。htaccess文件修复了它
当你通过。htaccess修改php配置时,你应该把配置放进去 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.ini中设置upload_max_filesize和post_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服务器才能使用新的配置。
如果您不能更改php.ini,那么您就不走运了。您不能在运行时更改这些值;如果上传的文件大于php.ini中指定的值,那么在执行到调用ini_set时将会失败。
请参阅核心php.ini指令的描述。
由于全局更改有一定风险,因此我尝试为单个脚本big_file_upload.php增加最大上传值。出于某种原因,ini_set没有帮助。经过一番研究,我得出了这个结论。把它放在。htaccess(除非通过AccessFileName更改名称)
<If "%{REQUEST_URI} == '/subfolder/big_file_upload.php'" >
php_value upload_max_filesize 200M
php_value post_max_size 200M
</If>
<Else>
php_value upload_max_filesize 1M
php_value post_max_size 1M
</Else>
为我工作。
我有同样的问题,我创建了一个.user.ini文件,并把它放在上传脚本所在的目录中。然后在文件中我设置了这两个值:
upload_max_filesize = 40M
post_max_size = 40M
这对我来说非常有效!