php – 让用户将大量文件上传到网站
所以我需要一点建议.我正在为学术目的建立一个网站,只限于非常多的人.该网站的唯一目的是作为文件上传的GUI.这些文件的大小通常在10-12GB之间.
通过做reasearch,我发现我可以使用php脚本上传文件,并更改php.ini中的最大文件上传大小(但是我找不到最大文件上传大小的限制).我有几个问题. 1)我需要以某种方式找出一种在网站和用户之间保持连接打开的方式,以避免连接超时等事情?如果是这样,在服务器端这样做足够了吗?或者这些用户将使用的网络浏览器还是一个问题(网络浏览器是否超时连接)? —我问这个是因为这些上传将花费巨大的时间. 2)我有什么安全问题需要牢记?到目前为止,我已经找到并考虑了以下内容: >仅从多个子网(我想要的学术界用户)限制访问网站, 这个网站的安全方面对于它的开发是至关重要的,当你使用12 GB文件时,这是一个非常棘手的问题. 这些是我认为很难实现的一些事情,但我确信还有更多.你们认为我还应该考虑什么?另外如果还有其他的实现方法,请不要犹豫. 附加信息: >到目前为止,这些用户使用scp将文件上传到此服务器 谢谢各位,我知道这是一个很大的吞咽,但任何帮助将真的不胜感激.
您无法通过
PHP上传大量的单个文件.不管你投入多少服务器资源(内存)(并相信我,你需要很多!),PHP中有一个限制,将阻止你这样做.
在php.ini中有一个名为“post_max_size”的变量,它会影响可以发送到服务器的最大数据量.这个变量是一个无符号的32位整数,这意味着你不能高于4,294,967,295. 一个很好的解决方案是使用Flash将文件拆分成几个小部分,然后进行文件上传.我为你找到了一个这样的图书馆:http://www.blog.elimak.com/2011/08/uploading-large-files-with-flash-splitting-the-bytearray-in-chunks/ 如果在PHP中遇到内存问题,只需使块更小. 祝你好运! 编辑:要回答你的第二个问题,你大部分都在那里.如果您担心数据可能会被劫持,请使用SSL进行传输.对于身份验证,请考虑使用OAuth,并确保在传输不活动时撤销用户的访问令牌.将php_flag引擎添加到.htaccess文件中,以防止上传的PHP文件运行.并且服务器病毒扫描程序不会是一个坏的事情,定期运行: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |