Funktioniert im Prinzip, habe sogar noch ein RedirectPlugin mit aktivieren können.
Aber was mir nicht gelingt, an passender Stelle Optionen zu übergeben, speziell an dem automatisch ausgewähltem "curl".
Ganz grob mal mein Quellcode:
PHP-Code:
$this->url = 'https://contao44.contaodev'; //meine interne Domain
$redirectPlugin = new RedirectPlugin();
$this->httpClient = $httpClient ?: new PluginClient(HttpClientDiscovery::find(), [$redirectPlugin]);
$this->requestFactory = $requestFactory ?: MessageFactoryDiscovery::find();
$request = $this->requestFactory->createRequest('GET', $this->url);
$response = $this->httpClient->sendRequest($request);
$ret = $response->getStatusCode(); // 200 bei gültiger url und wenn ich http://... aufrufe
Mein Problem: wenn das Zertifikat nicht ganz zur Domain passt, kommt:
Code:
cURL error 51: SSL: certificate subject name '*.contaodev' does not match target host name 'contao44.contaodev'
Gelesen habe ich, dass man es per
PHP-Code:
'verify' => false
abschalten könnte, wird aber nirgends angenommen.
Oder auch nicht so:
PHP-Code:
'curl' => [CURLOPT_SSL_VERIFYHOST => false, CURLOPT_SSL_VERIFYPEER => false]
Entweder wird es ignoriert oder angemeckert, das die Optionen nicht passen.
Abgesehen, davon, das man den Check nicht abschalten sollte, ist mir klar, aber wie geht das sonst?
Gibt ja noch andere Parameter die eventuell mal sinnvoll wären. (z.B. timeout)
Lesezeichen