-1

私はPHP関数を持っています:

function http_protocol()
{
  return ($_SERVER['SERVER_PORT'] == 443) ? 'https' : 'http';
}

ただし、発信元のドメインがHTTPのみであり、HTTPS のドメインに動的にリンクしたい場合、条件は http を返します。

したがって、サイトが HTTPS リクエストに応答するかどうかを確認し、応答する場合は https を返し、応答しない場合は http を返すことができると考えています。

@get_headers 配列を使用して実行できると考え、[0] 値に HTTPS があるかどうかを確認しましたが、HTTPS ヘッダーが存在するかどうかを確認できませんでした (例: HTTPS/1.1)。

私はこの質問に従っていました: PHP 経由で URL が存在するかどうかを確認するにはどうすればよいですか? ただし、HTTPS をチェックする場合を除きます。

私のロジックフローは正しいですか、それとも何か不足していますか?

編集: 特定の例では、自分が管理しているサイトのみをチェックします。したがって、コンテンツが HTTPS 経由で提供されるかどうかは事前にわかります。

4

1 に答える 1