我遇到了这样的问题,我必须在浏览器中创建文件发送系统,但是对于大文件(> 50M)。
我有POST_MAX_SIZE set at 32M but
FILE_MAX_SIZE is 128M
。
所以我必须把类型文件按钮和读取FULL路径发送给PHP FTP库。
你有任何解决方案吗?
(filetype.value returns only filename, not path
)。
答案 0 :(得分:1)
是,
使用HTML5中定义的FileReader将文件读入客户端。一旦你通过Ajax将它发送到你的服务器,你可以在服务器上完全访问该文件,因为它在服务器上。
在服务器上,您可以根据此SO Post.
设置接受的最大文件大小; Maximum allowed size for uploaded files.
upload_max_filesize = 40M
; Must be greater than or equal to upload_max_filesize
post_max_size = 40M
答案 1 :(得分:0)
你可以在php.ini文件“upload_max_filesize = 256”中增加文件大小并重新启动apache服务器
答案 2 :(得分:0)
upload_max_filesize
和post_max_size
是PHP_INI_PERDIR设置 - http://www.php.net/manual/en/ini.list.php。它们是可变的(http://php.net/manual/en/configuration.changes.modes.php)-
可以在php.ini,.htaccess,httpd.conf或 .user.ini 中设置条目(自PHP 5.3开始)
在web-hosting的根目录中使用.user.ini
文件(大多数虚拟主机服务都允许这样做)。如果您的服务器PHP版本是> = PHP 5.3,它将起作用。 PHP将扫描您的根目录以查找ini
文件并将其与默认设置合并。
我最近使用它并将upload_max_filesize
的默认值从2M更改为5M以满足我的个人需求。它也可能对你有用。创建一个名为.user.ini
的文件,并将参数设置为:
post_max_size = ...
upload_max_filesize = ...
请记住post_max_size应该大于upload_max_filesize,因为前者是POST的上限。