Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php AWS OpsWorks-Linux驱动器到S3存储桶_Php_Linux_Amazon Web Services_Amazon S3_Amazon Ec2 - Fatal编程技术网

Php AWS OpsWorks-Linux驱动器到S3存储桶

Php AWS OpsWorks-Linux驱动器到S3存储桶,php,linux,amazon-web-services,amazon-s3,amazon-ec2,Php,Linux,Amazon Web Services,Amazon S3,Amazon Ec2,将AWS linux实例上的驱动器“符号链接”到S3存储桶的最佳方式是什么 目前,我正在使用Apache的ProxyPass,使用以下代码将代理/映像/转换到S3存储桶 ProxyRequests Off <Proxy *> Order deny,allow Allow from all </Proxy> ProxyPass /images/ http://s3bucket.s3-website-us-east-1.amazonaws.

将AWS linux实例上的驱动器“符号链接”到S3存储桶的最佳方式是什么

目前,我正在使用Apache的ProxyPass,使用以下代码将代理/映像/转换到S3存储桶

  ProxyRequests Off

  <Proxy *>
    Order deny,allow
    Allow from all
  </Proxy>

  ProxyPass /images/ http://s3bucket.s3-website-us-east-1.amazonaws.com/
ProxyRequests关闭
命令拒绝,允许
通融
ProxyPass/图像/http://s3bucket.s3-website-us-east-1.amazonaws.com/
这非常有效,但仅适用于通过Apache进行HTTP访问。如果我想从PHP本身写入/images/目录,它将在本地写入

因此,我正在寻找一种将/images/重定向到S3存储桶的好方法,用于所有类型的操作。我已经看过S3FS了,但我已经知道该怎么做了

我还利用OpsWorks处理我的EC2实例,因此无论我使用什么方法,都需要能够通过OpsWorks和/或Chef recipes实现自动化


另一个选项是用于PHP的AWS SDK。这可能需要我更改将文件写入/images/目录的PHP代码。从长远来看,这可能是解决方案,但现在我需要另一个解决方案。

虽然s3fs可能会伪造到s3的映射,但您将遇到问题。问题是S3根本不像磁盘卷

使用磁盘卷,您可以分块从磁盘进行写入和读取。您还可以在其他操作中锁定文件

另一方面,S3是一个对象存储系统。它对整个文件进行操作

S3FS可以让它工作,但是将文件复制到临时目录中,这样您就可以对其进行写入,然后在完成后将其复制回S3

简单的操作可以正常工作,例如一次读取或写入整个文件,但在块级别工作的任何操作都可能失败

我建议使用amazon提供的现有客户端更新PHP代码,这非常容易。您将使用客户端代码,而不是
move\u upload\u file