ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|---|
|
エラー内容
| curl: (51) SSL: certificate subject name '~' does not match target host name '~' |
curl でHTTPS接続したとき、サーバー証明書の CN (Common Name) または SAN (Subject Alternative Name) に、接続先ホスト名が含まれていない場合に発生する SSL 検証エラーです。証明書のドメインと接続先のドメインが一致しないことを意味します。
発生条件 / 原因
- 証明書がそのホスト名向けに発行されていない — 例:
example.com用証明書をapi.example.comで使っている - IPアドレスで直接アクセスしている —
https://192.168.0.10/など。証明書はホスト名向けに発行されているので不一致になる - 証明書のSANが古い — ドメイン追加後に証明書を更新していない
- 自己署名証明書/社内CA — テスト環境向けの証明書で、ホスト名情報が合っていない
- SNI(Server Name Indication)を解釈できないクライアントで、共有ホストの別ドメイン証明書が返っている
対処法
1. 接続先ホスト名と証明書の中身を確認
まず証明書のCN/SANに、接続したいホスト名が含まれているかを確認します。
| $ openssl s_client -connect example.com:443 -servername example.com < /dev/null | openssl x509 -noout -subject -ext subjectAltName |
Subject の CN と X509v3 Subject Alternative Name に対象ホスト名が無ければ、証明書側の問題です。
2. 正しいホスト名で接続する
証明書が example.com 用なら、IPやサブドメインではなく example.com でアクセスします。
| $ curl https://example.com/path |
3. IP接続だが特定ホストで証明書を検証したい場合
--resolve オプションを使うと、ホスト名を保ったままIPを指定できます。
| $ curl --resolve example.com:443:192.168.0.10 https://example.com/path |
4. 開発・検証用に検証をスキップ(本番禁止)
-k または --insecure オプションでSSL検証を無視できます。セキュリティ上、開発/検証以外では使わないでください。
| $ curl -k https://192.168.0.10/path |
5. 証明書側を直す(サーバー管理者側)
- 必要なホスト名を SAN に追加して証明書を再発行する
- Let's Encrypt なら
certbotで対象ドメインを追加して再発行 - ワイルドカード証明書(
*.example.com)に切り替える
注意点
-kは暗号化はされるが認証は無い状態になり、中間者攻撃の検知ができなくなる- 本番ではホスト名と証明書を必ず一致させる。AWS ALB/CloudFront などのCDN/LBを通すときも証明書のSANに注意
- curl のエラーコード
(51)は SSL 名前検証失敗。他に(60)(CA信頼失敗)と混同しないこと
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページ
子ページはありません
同階層のページ
- curl: (51) SSL: certificate subject name '~' does not match target host name '~'
- mount: special device ... does not exist
- 【yum install php-fpm】エラー: パッケージ: php-fpm-5.4.16-46.el7.x86_64 (base)
- ファイルが開けません: https://centos7.iuscommunity.org/ius-release.rpm を飛ばします。
- File "/usr/bin/yum", line 30 except KeyboardInterrupt, e:
- unable to execute 'gcc': No such file or directory
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 Spring Frameworkのアノテーション一覧
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- djangoにおけるMVCアプリケーション実装例 2026-08-07 17:15:57
- PHPでのファイルアップロード方法|multipart/form-dataと$_FILES 2026-08-07 17:15:57
- PHP $_SERVERとは|DOCUMENT_ROOT・PHP_SELFなど主な要素 2026-08-07 17:15:57
- Scratchのアカウントの作り方|メールアドレスとユーザー名の登録手順 2026-08-07 17:15:57
- Bluetoothとは|仕組み・BLEとClassicの違い・用途 2026-08-07 17:15:57
- Spring Bootのテスト入門|@SpringBootTestとJUnitでの単体・結合テスト 2026-08-07 17:15:57
- 【PHPフレームワーク】Laravelの使い方 2026-08-07 17:15:56
- Scratch 作品の公開方法 2026-08-07 17:15:56
- APIキー取得方法 2026-08-07 17:15:56
- データベースとは?RDB / NoSQL / SQL の基礎 2026-08-07 17:15:56
- インストール方法(Windows版) 2026-08-07 17:15:56
- Spring Frameworkの使い方 2026-08-07 17:15:56
- インストール(eclipseプラグイン) 2026-08-07 17:15:56
- Java とは?言語仕様・JVM・主要フレームワーク一覧 2026-08-07 17:15:56
- Google OAuth 2.0 認証の実装方法 2026-08-07 17:15:56
コメントを削除してもよろしいでしょうか?