dachte, ich würde eine Frage fallen, da dies wird mir eine richtige KopfzerbrechenPHP Softlayer Object Storage hochladen SSL-Fehler
ich eine PHP-Anwendung, die Dateien in Softlayer Object Storage Container uploads. mit der Object-Storage-API kommunizieren ich die PHP-Bindungen von https://github.com/softlayer/softlayer-object-storage-php bin mit und verwiesen sie von meiner composer.json Datei
"softlayer/objectstorage": "dev-master",
Containerobjekt Abrufen von Dateien und URLs arbeitet alles in Ordnung. Aber ich habe immer Probleme mit dem Hochladen von Dateien, speziell abhängig von ihrer Größe. Früher war es vor wenigen Tagen arbeiten, aber aus irgendeinem Grund nicht mehr funktioniert kürzlich
Hier ist die ‚out-of-the-box‘ Code, den ich für das Hochladen von Dateien bin mit:
$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();
}
Aus irgendeinem Grund das Hochladen Eine Datei unter 1 MB funktioniert. Aber jede Datei mit einer Größe größer als diese, die -> create() Anforderung schließlich abläuft, wird keine Ausnahme ausgelöst, und ich erhalte diese Fehler im Log:
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)
Da diese Bindungen im Wesentlichen ein Wrapper rund sind curl, ich habe dann mit CURL selbst getestet, ob ich eine Datei größer als 1M auf den Softlayer Storage Container hochladen kann. Es stellt sich heraus, dass es gelungen ist, CURL sowohl auf meinem Dev-Rechner als auch auf meinem Staging-Server zu verwenden!
curl -i -XPUT -H "X-Auth-Token: {{MyAuthToken}}" --data-binary "@BigFile.txt" https://lon02.objectstorage.softlayer.net/v1/{{MyAuthTokenKey}}/{{MyContainer}}/BigFile.txt
Sind Sie schon einmal darauf gestoßen? Ich verstehe nicht, warum es plötzlich aufgehört hat zu arbeiten. Hat jemand eine Idee?
Vielen Dank für das Lesen