나는 다음과 같은 PHP 스크립트 (이것은 단지 아래쪽 절반) 한 :사용하여 HTTPS는
PHP Fatal error: Uncaught exception 'Guzzle\Http\Exception\CurlException' with message '[curl] 52: Empty reply from server [url] http://api.openstack.ecloud.co.uk:8774/v2/b7db5fe13c044b6e95bf5b766ae49393/servers/f5bf8951-f662-4940-904c-023b98b724c0' in /var/www/html/nutshell/openstack/vendor/guzzle/guzzle/src/Guzzle/Http/Curl/CurlMulti.php:359
: 나는 다음과 같은 오류가 발생을
use Guzzle\Http\Exception\BadResponseException;
$server = $compute->server();
try {
$response = $server->create(array(
'name' => 'My server',
'image' => $centos,
'flavor' => $twoGbFlavor
));
} catch (BadResponseException $e) {
// No! Something failed. Let's find out:
printf("Request: %s\n\nResponse: %s", $e->getRequest(), $e->getResponse());
}
use OpenCloud\Compute\Constants\ServerState;
$callback = function($server) {
if (!empty($server->error)) {
var_dump($server->error);
exit;
} else {
echo sprintf(
"Waiting on %s/%-12s %4s%%",
$server->name(),
$server->status(),
isset($server->progress) ? $server->progress : 0
);
}
};
$server->waitFor(ServerState::ACTIVE, 600, $callback);
을 실행하면
https 대신 http를 사용하는 waitFor 메소드의 문제점을 해결했습니다. 그러나이 방법을 사용하여 https를 사용하는 방법을 찾지 못하거나 https를 통해 모든 호출을 강제로 변경할 수있는 설정이있는 경우 어떻게해야합니까?
또한 이러한 명령을 명령 줄에서 curl을 사용하여 스크립트 외부에서 실행하려고 시도했으며 https가 작동하는지 확인할 수 있습니다. 그래서 https를 사용하는 스크립트 호출을 얻는 방법을 알아 내면됩니다.
위의 $ server-> create 호출이 정상적으로 작동하며 waitFor가 같은 방식 (예 : https)으로 작동 할 것으로 예상했음을 유의하십시오.
도움을 주시면 감사하겠습니다.
: https://github.com/rackspace/php-opencloud을 – chaoss88