上传图像时,php将临时图像存储在服务器上的本地图像。
是否可以更改此临时位置,以便其远离本地服务器。
原因:使用无粘性会话的加载平衡,我不希望将文件上传到一台服务器,然后在另一台服务器上不可用。注意:我不需要完成文件上传并在文件中工作。
首选的温度位置将是AWS S3-也有兴趣知道是否可能。
如果不可能,我可以使文件上传一个完整的过程,将完成的文件放在最终位置。
只是想知道php临时图像/文件位置是否可以离本地服务器?
谢谢
您可以在ELB下的实例上安装带有S3F的S3存储桶,以便所有上传都在应用程序服务器之间共享。关于/tmp,不要触摸它,因为目的地是S3,并且可以共享 - 您不必担心。
如果您有很多上传,则S3可能是瓶颈。在这种情况下,我建议设置NAS。就个人而言,我之所以使用GlusterF,是因为它缩放得很好且易于设置。它有复制问题,但您可能根本不使用复制的卷,而且您很好。
另一种选择是Ceph,sector/sphere,xtreemfs,tahoe-lafs,pohmelfs等等...
您可以使用本文中详细介绍的一些较新技术直接将文件从客户端上传到S3:
http://www.ioncannon.net/programmming/1539/direct-browser-uploading-mazon-s3-cors-fileapi-xhr2-and-signed-puts/
否则,我个人建议将每个服务器的tmp
文件夹完全存储使用。文件在服务器上后,您始终可以上传到S3,然后可以在所有负载平衡的服务器上访问。