Zajmuję się tworzeniem strony lokalnie, która uwierzytelnia się przeciwko centrailzedowi. Jeden z kroków wymaga od mnie złożenia żądania zwijania do zasobu https, aby uzyskać token dostępu.Jak włączyć obsługę CURLOPT_SSL_VERIFYHOST = 2 w moim systemie OS/PHP
Część curl config to:
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
//curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
Jak widać ja wykomentowane opcją CURLOPT_SSL_VERIFYHOST. Czytałem na php.net i na różnych blogach/stackoverflow (Security consequences of disabling CURLOPT_SSL_VERIFYHOST (libcurl/openssl)) posty CO mają te opcje.
Na mojej maszynie programistycznej CURLOPT_SSL_VERIFYHOST 2
działa dobrze. Używam tylko instalacji php5 w wannie php5 i php5-curl.
W przypadku produkcji (chmury przestrzeni typu rackspace) nie działa CURLOPT_SSL_VERIFYHOST 2
, dlatego zmieniono ją na wartość false, aby sprawdzić, czy to był problem. Widząc, że nie zrobiłem nic, aby włączyć to na moim localhost, nie wiem, jakie opcje dyrektyw/config kontrolują to.
Co mam na myśli, że to „nie działa” jest to, że na produkcji curl połączenie jest zwrócenie http_code
z 0
gdy VERIFYHOST
jest ustawiony na 2
. Kiedy ustawić go FALSE
jest zwrócenie kod stanu 200
Moje pytanie brzmi:
Jak można włączyć SSL_VERIFYHOST
na pole linux?
Każda pomoc zostanie bardzo doceniona. Dziękuję Ci.
kędzior jest '2' dla tego ustawienia: http://php.net/manual/en/function.curl-setopt.php –