nginx가 동일한 포트에서 http 및 https 요청을 처리 할 수 있는지 궁금합니다 . [*]
이것이 내가하려고하는 일입니다. http 요청을 처리하는 웹 서버 (lighttpd)와 https를 통해 문서 트리의 특정 섹션을 제공하는 C 프로그램을 실행하고 있습니다. 이 두 프로세스는 동일한 서버에서 실행됩니다.
방화벽 수준 에서이 서버로 트래픽을 전달하는 포트는 하나만있을 수 있습니다 . 그래서 내가하고 싶은 것은이 서버에서 nginx를 설정하여 단일 포트에서 요청을 수신 한 다음에
A) 모든 http://myhost.com/ * 요청을 리디렉션 하여 localhost : 8080 (lighttpd가 청취하는 곳)으로 이동합니다.
B) 사용자가 예를 들어 https : // myhost.com/app로 시작하는 URL을 요청하면 해당 요청을 localhost : 8008 (C 프로그램)로 보냅니다. 이 경우 원격 브라우저와 nginx 간의 트래픽을 암호화해야합니다.
이것이 가능하다고 생각하십니까? 그렇다면 어떻게 할 수 있습니까?
두 개의 다른 포트를 사용 하여이 작업을 수행하는 방법을 알고 있습니다. 내가 직면 한 도전은 단 하나의 포트 로이 작업을 수행하는 것입니다 (불행히도이 특정 환경에서 방화벽 구성을 제어 할 수 없으므로 피할 수없는 제한 사항입니다). 방화벽을 우회하기 위해 ssh를 통한 역방향 포트 포워딩과 같은 기술을 사용하는 것도 작동하지 않습니다. 웹 브라우저와 인터넷 링크에 불과한 원격 사용자에게는 작동하지 않기 때문입니다.
이것이 nginx 기능을 넘어 서면이 요구 사항을 충족시킬 수있는 다른 제품에 대해 알고 있습니까? (지금까지는 lighttpd와 pound으로 이것을 설정하는데 실패했습니다). 또한 Apache를 피하는 것이 좋습니다 (유일한 선택 인 경우 Apache를 기꺼이 사용하지만).
미리 감사드립니다, 알렉스
[*] 명확하게 말하자면, 같은 포트를 통해 암호화 및 암호화되지 않은 HTTP 연결을 처리하는 것에 대해 이야기하고 있습니다. 암호화가 SSL 또는 TLS를 통해 수행되는지는 중요하지 않습니다.