私はcURLを使用して数ヶ月間ログインを確認しており、はうまくいきました。CurlエラーSSL証明書がローカル発行者証明書を取得できません - 最近の開発
$searchURL = "https://url.com/isTokenValid?";
$strCookie = 'asdf=' . $_COOKIE['asdf'] . '; path=/';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $searchURL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_COOKIE, $strCookie);
curl_setopt($ch, CURLOPT_CAPATH, "\cacert.pem");
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_FAILONERROR, FALSE);
if($answer = curl_exec($ch))
{
if (strpos($answer,'true') !== false)
{
$login = true;
}
else
{
$login = false;
}
今朝 - それは動作を停止し、私はエラーを取得する:
Curl error: SSL certificate problem: unable to get local issuer certificate
私はhttps://curl.haxx.se/ca/cacert.pemからcacert.pem
ファイルを使用しています - このデータは更新またはリフレッシュする必要がある場合には何らかの形でこの日付のファイルを使用していますが、それはまだ最新のようです:
Certificate data from Mozilla as of: Wed Oct 28 04:12:04 2015
これは私のウェブ開発の特典ではありませんが、だから私はここで何が起こっているのかをトラブルシューティングする方法がわからない。私の最初の考えは、何かサーバ側でなければならないということです。なぜなら、私は週末にローカルに変更を加えていないからです。しかし、誰かが私を正しい方向に向けることができれば、
ありがとう!
行いますサーバーへのコマンドラインアクセスを持っていますか?もしそうなら、このコマンドを試してみてください 'openssl s_client -connect url.com:443' – Machavity
リモートサイトが最近新しい証明書をインストールした可能性があります。日付と発行者が変更されたかどうかを確認するには、ブラウザを使用して証明書を確認してください。 – drew010
@Machavity私はWindowsマシンを使っています - あなたは 'コマンドラインアクセス'で何を意味するのか分かりません - Windowsの 'cmd'でコマンドを試しました。コマンドではありません。 –