Я работаю над проектом, который размещается на Amazon Web Services. Настройка сервера состоит из двух экземпляров EC2, одного балансировщика эластичной нагрузки и дополнительного хранилища эластичных блоков, на котором находится веб-приложение. Предполагается, что проект использует S3 для хранения файлов, загружаемых пользователями. Ради этого вопроса я буду называть ведро S3 static.example.com
Я попытался использовать s3fs
(https://code.google.com/p/s3fs/wiki/FuseOverAmazon), RioFS
(https://github.com/skoobe/riofs) и s3ql
(https://code.google.com/p/s3ql/). s3fs
будет монтировать файловую систему, но не позволит мне писать в ведро (я задал этот вопрос на SO: Как смонтировать том S3 с соответствующими разрешениями с помощью FUSE). RioFS
будет монтировать файловую систему и позволит мне писать в ведро из оболочки, но файлы, которые сохраняются с помощью PHP, не отображаются в ведре (я открыл проблему с проектом в GitHub). s3ql
будет монтировать ведро, но ни один из файлов, которые уже находятся в корзине, не отображается в файловой системе.
Это команды монтирования, которые я использовал:
s3fs static.example.com -ouse_cache=/tmp,allow_other /mnt/static.example.com
riofs -o allow_other http://s3.amazonaws.com static.example.com /mnt/static.example.com
s3ql mount.s3ql s3://static.example.com /mnt/static.example.com
Я также попытался использовать этот класс S3: https://github.com/tpyo/amazon-s3-php-class/ и этот специальный пакет S3 FuelPHP: https://github.com/tomschlick/fuel-s3. Я смог получить пакет FuelPHP для перечисления доступных ведер и файлов, но сохранение файлов в ведро не удалось (но не было ошибок).
Вы когда-нибудь монтировали ведро S3 в локальной файловой системе Linux и использовали PHP для записи файла в ведро? Какой инструмент вы использовали? Если вы использовали один из вышеупомянутых инструментов, какую версию вы использовали?
ИЗМЕНИТЬ
Мне сообщили, что проблема, которую я открыл с помощью RioFS
в GitHub, была решена. Хотя я решил использовать S3 REST API вместо того, чтобы пытаться монтировать ведро в качестве тома, кажется, что RioFS
может быть жизнеспособным вариантом в наши дни.