2012-06-13 2 views
1

방금 ​​Winsock을 공부하기 시작했습니다. 간단한 질문을했습니다. 서버 연결이 HTTP 또는 HTTPS 연결을 통해 이루어져야하는지 어떻게 결정할 수 있습니까? randomsite.random에 연결하고 싶은 경우, 어떤 연결이 필요한지 어떻게 알 수 있습니까? HTTP의 경우 포트 80에 연결해야하며 HTTPS의 경우에는 443이 필요하지만 HTTPS 연결이 필요한 시점은 어떻게 결정할 수 있습니까?C++ Winsock HTTP 또는 HTTPS 확인

관심을 가져 주셔서 감사합니다.

답변

3

웹 브라우저가 결정하는 것과 동일한 방식 :로드하려는 URL을 기반으로합니다. 웹 브라우저에서 URL은 http 또는 https으로 시작되며 SSL 연결의 사용 여부를 결정하는 데 사용됩니다. 또한 URL에 포트 x 호가 지정되지 않은 경우 포트를 판별하기 위해 사용됩니다.

많은 사이트에서 보안 및 비보안 버전을 제공합니다. 일부는 보안 버전 만 제공하지만 보안 버전의 URL로 리디렉션하는 비보안 서버도 실행합니다. 리디렉션을 다음과 같이 구현하면 사용할 버전을 염려 할 필요가 없습니다. 자동으로 업데이트됩니다.

3

이것은 대개 연결하려는 사이트의 기능입니다.

사이트에 HTTPS 연결이 필요한 경우 HTTP를 통해 연결하면 HTTPS URL로 리디렉션 응답 코드가 표시됩니다.

1

첫째, 항상 포트 80과 포트 443이 아닙니다. 둘째, 잘못된 통신 프로토콜을 사용하면 성공적인 통신을 구축 할 수 없습니다. 다른 대답에서 말한 것처럼 HTTP를 통해 HTTPS 서버에 연결하려고하면 HTTPS URL이있는 리디렉션 응답 코드가 제공됩니다.

대부분의 경우 이전에이 정보가 있습니다.