0

Cにプロジェクトがあり、HTTP GETリクエスト(ポート10000)を受信し、それを処理して適切な応答を送信します。ネットワーク接続にはwinsockライブラリを使用しています。また、別のポート(ポート10001)でHTTPS要求を受信するモジュールがあります。クライアントは、送信する必要のあるポートを指定します。httpメッセージを送信している場合は、ポート10000で送信し、https要求の場合は、ポート10001に送信します。これにより、次の要求はHTTPまたはHTTPSリクエスト。クライアントは、HTTPまたはHTTPSのどちらであっても1つのポート番号のみを指定する必要があります。つまり、ポート10000でのみ送信します。

これで、HTTPSメッセージがポート10000に届くと、すべて暗号化されますが、そのメッセージをポート10001に送信したいと思います。サーバーレベルでHTTPまたはHTTPS要求を区別する方法はありますか?

4

1 に答える 1

2

クライアントからの最初のバイトが の場合、0x16SSL ハンドシェイクの始まりです。HTTP リクエストの開始ではないため、このプロパティでリクエストを区別できます。

于 2013-02-13T13:10:21.683 に答える