2012-08-15 3 views
0

나는 몽구스가 HTTP 요청을 위해 포트 8080에서 수신 대기하는 C++ 서버를 가지고있다. 아파치 서버가 이미 포트 80을 사용하고 있기 때문에 포트 8080을 사용 중입니다.localhost 수신 청취 서버 : 8080 아파치가 여전히 포트 80을 청취 할 수 있습니까?

http 요청을 수신하는 C++ 서버가있는 이유는 Facebook에서 보낸 GET을 수신하여 사용자의 Facebook 정보 . Facebook 서버 측 Auth에 대해서는 localhost : 8080으로 리디렉션됩니다.

페이스 북에서 보낸 정보를 올바르게 받고 있지만, 아파치가 클라이언트 웹 페이지에 내 html을 제공하지 않습니다 (로컬 호스트로만 리디렉션하면 제대로 작동합니다).

두 가지 작업을 모두 수행 할 수 있습니까? 클라이언트가 여전히 포트 80에서 index.html을 얻으려고합니까 아니면 8080이 이것을 보낼 것으로 기대합니까?

+0

기본적으로 웹 클라이언트 (브라우저 또는 다른 클라이언트)는 항상 포트 80에서 가져 오려고 시도합니다. 다른 포트에서 페치하도록 명시 적으로 알려야합니다. 클라이언트가 일반 웹 서버에 연결하지 않으면 리디렉션에 몇 가지 문제가있을 수 있습니다. –

+0

그 질문은 기존의 질문 인 [C++ Linux Server가 Facebook HTTP 인증 메시지를받는] (http://facebook.stackoverflow.com/questions/11946136/c-linux)에 후속 조치 [편집] 할 수 있습니다. -server-getting-facebook-http-authentication-message). 이러한 사소한 세부 사항이 기존 상황의 맥락에 잘 들어 맞는 경우 프로젝트의 모든 작은 세부 사항에 대해 새로운 질문을 열지 마십시오. 감사. – CBroe

+0

혹시이 권리를 가지고 계셨습니까? 방법?? –

답변

0

80이 8080입니까? 명백하게 아니오. 따라서 두 포트 모두 다른 응용 프로그램에서 수신 할 수 있습니다. Wireshark (패킷 분석기)로 소득 요청을 조사하십시오.

+0

나는 wireshark를 얻고 전송 된 패킷을 체크 아웃했다. 그것은 단지 포트 8080에 요청하려고하는 것 같습니다. 어떻게 해결할 수 있을지 모르겠습니다. 아파치가 필요한 정보를 다시 보낼 수 있도록 클라이언트를 포트 80으로 리디렉션 할 작은 html 파일을 보내야합니까? –

+0

브라우저가 기본적으로 포트 8080에 연결하는 경우에는 실제로 이상합니다. 먼저 포트 80에 연결해야하며 이후에만 다른 종류의 리디렉션이있는 경우 다른 포트를 시도 할 수 있습니다. 패킷을 'tcp.port == 80'로 필터링하십시오. tcp.port == 8080 '로 변경하고 요청을 신중하게 검사하십시오. 포트 80에 대한 요청이 없으면 연결 방법을 자세하게 설명하십시오. –

관련 문제