コンテンツ

    サーバー応答コード 526 Invalid SSL Certificate

    HTTPステータスコード526(無効なSSL証明書)の詳細

    HTTPステータスコード526は、サーバー上のSSL証明書に問題があることを示しています。このエラーは、クライアントが安全な接続を確立できない原因となります。特にCloudflareのようなプロキシサーバーを利用する際に、SSL証明書を確認する過程でしばしば発生します。

    526 - Invalid SSL Certificate

    エラー526の原因

    • 無効または期限切れのSSL証明書
    • サーバー上にSSL証明書が存在しない
    • サーバー上のSSL設定が不正確

    エラー526の実例

    1. Cloudflareの例:

      クライアントがCloudflareを介してウェブサイトにアクセスしようとしたが、サーバー上の証明書が無効である場合。

    2. ローカルサーバーの例:

      自己署名証明書を使用してローカルサーバー上でアプリケーションを開発している場合、HTTPSを介してアプリケーションに接続しようとするとエラー526が発生します。

    3. 期限切れの証明書の例:

      ウェブサイトのSSL証明書が期限切れであり、更新されずに使用され続けている場合、ユーザーがサイトにアクセスするとエラー526が表示されます。

    異なるプログラミング言語でのエラー526の修正方法

    開発者は、使用しているプログラミング言語に応じてエラー526を修正するためのさまざまな方法を取ることができます。

    言語 修正方法 サンプルコード
    PHP SSLの設定を確認し、適切な証明書を使用していることを確認。
    $url = "https://example.com/api";
    $options = [
        "ssl" => [
            "verify_peer" => true,
            "verify_peer_name" => true,
            "cafile" => "/path/to/cacert.pem",
        ],
    ];
    $context = stream_context_create($options);
    $response = file_get_contents($url, false, $context);
                
    Python requestsライブラリを使用してSSLを適切に検証。
    import requests
    
    url = "https://example.com/api"
    response = requests.get(url, verify='/path/to/cacert.pem')
    print(response.content)
                
    Node.js HTTPS設定が正しく行われていることを確認し、最新の証明書を使用。
    const https = require('https');
    const fs = require('fs');
    
    const options = {
        key: fs.readFileSync('/path/to/privatekey.pem'),
        cert: fs.readFileSync('/path/to/certificate.pem'),
        ca: fs.readFileSync('/path/to/cacert.pem')
    };
    
    https.createServer(options, (req, res) => {
        res.writeHead(200);
        res.end('Hello Secure World!');
    }).listen(443);