我尝试使用PHP将大(> ~1.5MB)图像上传到我的网站(免费托管),但该文件不会出现在服务器上。
有时我会收到错误1(超出最大大小),有时它会告诉我move_uploaded_file()
成功但图像仍然没有出现。
当我尝试将PHP.ini
设置为超过2M的上传大小时,它会回到2M。
我有什么办法吗?
TNX。
答案 0 :(得分:1)
我遇到了托管服务提供商的这个问题,您需要一个本地php.ini
文件才能覆盖主php.ini
提供的内容。使用ini_set()
不会对此类案件起作用。如果您确实拥有本地php.ini
并且仍然无法正常工作,那么最好联系您的提供商并询问他们如何进一步管理。
答案 1 :(得分:0)
您可以尝试在 .htaccess 中设置它们(或者只能使用post_max_size进行设置)ini_set()
如果它不起作用,则表示您的提供商禁用了它。
php_value upload_max_filesize 10M
php_value post_max_size 10M
要添加到.htaccess的行
注意: upload_max_filesize是 PHP_INI_PERDIR 的类型,这意味着可以在 php.ini , .htaccess <中设置它/ strong>, httpd.conf 或 .user.ini (自PHP 5.3开始)
答案 2 :(得分:0)
您需要从php.ini
更改一些配置指令,如下所示
post_max_size = 64M
upload_max_filesize = 64M
鉴于您使用免费托管,您可能无权更改php.ini文件,如果是这种情况,那么您可以使用.htaccess
文件来覆盖这些值。
upload_max_filesize
具有PHP_INI_PERDIR可更改状态,这意味着无法通过ini_set
进行更改,并且可以在以下位置进行更改。可以在php.ini,.htaccess,httpd.conf或.user.ini