laravel — PHP OpenCloud / OpenStack, как создать контейнер для публичного доступа

Используя Laravel с OpenCloud / OpenStack, я могу создать контейнер с помощью функции createContainer, но по умолчанию он создает частный контейнер, и я хотел бы создать контейнер с открытым доступом для чтения (что можно сделать на портале хостинг-провайдера).

Вот мой код:

$client = app()->make('OpenCloud\OpenStack');
$service = $client->objectStoreService('swift', $data_center);
$container = $service->createContainer($container_name);
// trying to find how to set $container read access ???

1

Решение

Поскольку по умолчанию контейнер swift не является общедоступным, вы можете изменить это, изменив метаданные контейнера.

Это может сработать:

$metadata = $container->appendToMetadata(array(
'X-Container-Read' =>: '.r:*'
));
[1]http://docs.php-opencloud.com/en/latest/services/object-store/containers.html#create-or-update-container-metadata

[2]https://ask.openstack.org/en/question/80609/how-to-make-a-container-public-in-swift-rest-api/

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]