PHP Softlayer Object Storage Загрузка SSL ошибка

Думал, что я бы бросил вопрос, так как это дает мне правильную головную боль

У меня есть приложение PHP, которое загружает файлы в контейнеры SoftLayer Object Storage.
Для связи с API хранилища объектов я использую привязки PHP из
https://github.com/softlayer/softlayer-object-storage-php
и ссылался на них из моего файла composer.json

    "softlayer/objectstorage": "dev-master",

Получение файлов-контейнеров объектов и URL-адресов работает нормально.
Но у меня постоянно возникают проблемы с загрузкой файлов, особенно в зависимости от их размера. Раньше он работал пару дней назад, но почему-то недавно перестал работать

Вот код «из коробки», который я использую для загрузки файлов:

$options = array('adapter' => ObjectStorage_Http_Client::SOCKET, 'timeout' => 10);
$objStorage = new ObjectStorage('', '', '', $options);

try {
$newFile = $objStorage->with('RemoteFilePath')
->setLocalFile($PathTolocalFile)
->create();

return $newFile->getUrl();
}
catch (Exception $e) {
return $e->getMessage();
}

По какой-то причине загрузка файла объемом менее 1 Мб работает. Но для любого файла, размер которого больше этого, запрос -> create () со временем истекает, исключений не выдается, и я продолжаю получать эти ошибки в своем журнале:

xxx.xxx.xxx.xx - [05/06/16 03:47:02] Warning: fwrite(): SSL operation failed with code 1. OpenSSL Error messages:
error:1409F07F:SSL routines:SSL3_WRITE_PENDING:bad write retry (/var/www/vendor/softlayer/objectstorage/lib/ObjectStorage/Http/Adapter/Socket.php:132)

Поскольку эти привязки, по сути, представляют собой обертку вокруг скручивания, я сам протестировал с CURL, чтобы посмотреть, смогу ли я загрузить файл больше 1M в Softlayer Storage Container. Оказалось, что CURL удалось использовать как на моей машине разработчика, так и на промежуточном сервере!

curl -i -XPUT -H "X-Auth-Token: {{MyAuthToken}}" --data-binary "@BigFile.txt" https://lon02.objectstorage.softlayer.net/v1/{{MyAuthTokenKey}}/{{MyContainer}}/BigFile.txt

Вы когда-нибудь сталкивались с этим? Я не понимаю, почему это вдруг перестало работать.
У кого-нибудь есть идеи?

Спасибо за прочтение

0

Решение

Я не смог воспроизвести вашу проблему, я смог загрузить файлы размером более 2 МБ, используя ваш код.
В любом случае, проблема, с которой вы столкнулись, связана с неисправностью SSL / OpenSSL, посмотрите следующие ссылки, чтобы получить больше информации о ней и о том, как ее решить:

1

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

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

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