Basicaly我想找到一种方法来增加最大上传大小,我只是在谈论wordpress,因为它恰好是我正在研究的平台,但我需要的是找到一种方法来解决php设置问题在wordpress上似乎使用那些设置作为默认设置。 请注意,我只关注上传图片,而不是其他类型的文件。
我在google上发现了几个页面,解释了如何编辑wordpress设置(在我的情况下,这不是可行的),或者更改服务器端的php设置,而我根本无法做到这一点。
我想到了实现这一目标的几种方法,但不知道从哪里开始,因为我在图像处理方面不是很好。我正在考虑评估图片大小并将其分成几个文件(它是否可以在js中执行?),然后将它们上传到服务器上并在那里用php(我可以做)组装它们。
你能告诉我你的想法吗?我不是要求任何人做这项工作,我只是想寻找一个提示,或者只是为了告诉我从js开始的地方或者我需要在前端使用的其他语言。非常感谢。
答案 0 :(得分:1)
限制是在服务器级别。
您必须调整服务器配置才能下载到WordPress。
如果您将WordPress配置设置为最大40MB,而Apache(或其他网络服务器软件)仍然有2MB的限制,那么您将无法发布超过2MB的内容。
一种选择是使用基于Flash的上传工具,该工具可以在上传之前执行一些预处理来缩小图像尺寸。
如果你真的想要开心,你可以开发自己的基于Flash的上传工具,将上传块分成2MB部分(或者服务器的最大帖子大小)和一些服务器端脚本来重新组装部分,就像互联网对数据包一样。
答案 1 :(得分:1)
是的,当然可以通过JS将文件拆分成块并单独发送这些文件。
声明文件输入字段:
<input type="file" id="input">
访问第一个文件(如果使用 multiple 属性,可能会有更多文件):
var selected_file = document.getElementById('input').files[0];
您现在有一个File对象,它也继承了Blob接口。因此,您可以调用Blob.slice以将数据拆分为块。
通过AJAX上传这些块
在服务器端再次组合块
进一步阅读:
https://developer.mozilla.org/en-US/docs/Using_files_from_web_applications https://developer.mozilla.org/en-US/docs/Web/API/File https://developer.mozilla.org/en-US/docs/Web/API/Blob