1

ブラウザでhttpにアクセスすると、 https://www.google.com/にリダイレクトされます。このコードを実行すると、 httpsが返されることを期待しています。://www.google.com/CURLINFO_EFFECTIVE_URL

$ch = curl_init('http://google.com/');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($ch, CURLOPT_NOBODY, true);
echo curl_exec($ch); // echos nothing
echo curl_getinfo($ch, CURLINFO_HTTP_CODE); // echos '200'
echo curl_getinfo($ch, CURLINFO_EFFECTIVE_URL); // echos 'http://google.com/'
curl_close($ch);

SSL証明書を追加して次のフィールドを追加すると、期待どおりに機能しますか?

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_CAINFO, 'whateverCrt.crt');
4

0 に答える 0