拦截调用ubuntu上的文件夹并模拟文件夹行为

时间:2017-03-09 09:36:36

标签: php ubuntu amazon-s3 filesystems

我在PHP上有一个很大的CRM系统,它可以处理用户文件,并将它们存储在项目根目录的文件夹中。现在我需要更改系统以保存Amazon S3上的文件,但由于系统结构不良(它是一个旧的开源系统),我不能只重写代码。所以,我有点疯狂的想法,拦截所有系统调用到一个文件夹(“/ var / www /%my_project%/ uploads”),并以特殊方式处理它们。 PHP应该确保它适用于通常的文件夹,file_put_contents和file_get_contents应该照常工作,但事实上它们应该使用代码来为S3提供文件。这可能吗(怎么样?),或者说这太疯狂了?

谢谢:)

1 个答案:

答案 0 :(得分:0)

Amazon S3 Stream Wrapper帮助了我。只需创建一个客户端对象,并调用registerStreamWrapper方法即可。这就是全部,现在您可以使用文件夹“s3:// yourbacketname”和普通文件夹一样。