メールアイコン ご相談はこちらから

WordPressバージョンアップでエラーが出た時の対処法「cURL error 60」

curl error 60,wordpress エラー,対処法
  1. どんなエラーが出たか
  2. なぜ起きるのか(3行で)
  3. 対処法:CA証明書バンドルを差し替える
  4. よくある誤解
  5. ローカル環境でも同じエラーが出る場合
  6. 作業後のセキュリティチェック
  7. まとめ:エラーが出たときのチェックリスト

※この記事は、同様のエラーに直面している方々に向けた記事や備忘録として公開しています。



管理画面から更新しようとしたら突然エラーが出た、という方向けに原因と解決手順をまとめました。エンジニアでなくても試せます。

どんなエラーが出たか

管理画面の「更新」ボタンを押すと、こんなメッセージが出て止まります。

ダウンロードに失敗しました。: cURL error 60: SSL certificate problem: unable to get local issuer certificate
Installation Failed

一見むずかしそうですが、原因はシンプルです。

なぜ起きるのか(3行で)

WordPressが更新ファイルをダウンロードするとき、「相手サーバーが信頼できるか」を証明書で確認します。その確認に使うファイル(CA証明書バンドル)が古くなっていると、確認に失敗してエラーになります。

ポイント:php.inicacert.pem の設定が正しくても、このエラーは起きることがあります。WordPressが内部で別のファイルを使っているためです。

対処法:CA証明書バンドルを差し替える

対象ファイル

wp-includes/certificates/ca-bundle.crt

このファイルを最新版に差し替えるだけで解決します。

① 既存ファイルをバックアップする

FTPソフトやサーバーのファイルマネージャーで、以下のファイルを別名で保存しておきます。

wp-includes/certificates/ca-bundle.crt
 ↓
wp-includes/certificates/ca-bundle.crt.bak(などにリネーム)

② 新しいファイルを入手する

WordPressの公式GitHubリポジトリから最新の ca-bundle.crt をダウンロードします。

③ サーバーにアップロードする

ダウンロードしたファイルを wp-includes/certificates/ca-bundle.crt に上書きアップロードします。

注意:ファイルのパーミッション(権限)は元のファイルと同じ設定にしてください。

④ 管理画面から更新を再実行する

WordPressの管理画面に戻り、もう一度「更新」を実行します。正常に完了すれば成功です。

よくある誤解

やりがちな対処効果
php.inicurl.cainfo を修正する△ これだけでは直らないことが多い
cacert.pem をアップロードし直す△ 同上
ca-bundle.crt を差し替える✅ これが根本的な解決策

php.inicacert.pem を変更していた場合は、元に戻してOKです。

ローカル環境でも同じエラーが出る場合

本番サーバーの php.ini には、サーバー固有のパスが書かれています。

curl.cainfo = "/home/ユーザー名/html/cacert.pem"

このパスはサーバー上にしか存在しないため、手元のMac・Windowsにファイルをコピーして動かすと、同じエラーが出ることがあります。原因が別なので、混同しないようにご注意ください。

作業後のセキュリティチェック

  • 動作確認のためにサーバーに置いた test-php.php(phpinfo表示用など)は必ず削除する
  • wp-config.php(データベースのパスワードが入っている)はGitHubや共有ドライブに上げない

まとめ:エラーが出たときのチェックリスト

  • まず試す:wp-includes/certificates/ca-bundle.crt を最新版に差し替える
  • php.ini・cacert.pem は:変更していた場合は元に戻してOK
  • ローカルでも出る場合:原因が別なので切り分けて対処する
  • 作業後は:テスト用ファイルの削除を忘れずに

多くの場合、ca-bundle.crt の差し替えだけで解決します。php.ini より先に試す価値があります。

動作確認環境:CPIサーバー/ PHP 7.4