0
PHP-Chefを使用してLaravelでシェフAPIに接続しようとしています。私は.chefフォルダのknife.rbから取得したデータでシェフ設定を設定しようとしました。 Knife.rbの指示に従って、セットアップクライアントとキーがあります。しかし、私は得る:Laravel openssl_private_encrypt():キーパラメータが有効な秘密キーではありません
openssl_private_encrypt(): key param is not a valid private key
そして、私はdd($this->key)
を行うときに、私のコントローラで私がお返しにnullを取得します。これは私のコントローラです:
protected $server;
protected $client;
protected $key;
protected $version;
public function ___construct()
{
$this->server = config('chef.server');
$this->client = config('chef.client');
$this->key = config('chef.key');
$this->version = config('chef.version');
}
/**
* Get all dns records
*/
public function index()
{
dd($this->key);
$chef = new Chef($this->server, $this->client, $this->key, $this->version);
// API request
$response = $chef->get('/');
dd($response);
}
そして、これはちょうど私はそれが正しかったと思いますので、お答えするために、これを下にコピーする
return [
'server' => 'https://172.16.0.227:443/organizations/myOrganizationsName',
'client' => 'chef-validator',
'key' => '/Users/myName/.chef/ORGANIZATION-validator.pem',
'version' => '12.7.0',
"enterprise" => false
];
私は少しのPHPを知っていますが、データを消毒したようですが、キーファイルが存在し、PHPによって読み取り可能であることを100%確信していますか? – coderanger
実際にはパスが間違っていました。私は自分のプロジェクトをホームステッドに持っているので、ルートプロジェクトディレクトリにフォルダをコピーしてパスを変更しなければなりませんでした。 – Marco