URL의 도메인에 따라 웹 요청을 개인 네트워크로 어떻게 라우팅합니까?

URL의 도메인에 따라 웹 요청을 개인 네트워크로 어떻게 라우팅합니까?

대본:

IP 수가 제한되어 있으므로 여러 도메인이 동일한 IP 주소로 확인됩니다. 그러나 이러한 도메인은 모두 동일한 웹 서버, VM 또는 전용 시스템에서 실행되지 않을 수도 있습니다. 따라서 사설망에 진입하는 시점의 도메인을 URL의 도메인 조건에 따라 올바른 위치로 라우팅하고 싶습니다.

어떻게 해야 하나요?

답변1

대부분의 라우터/방화벽은 특정 포트를 기반으로 트래픽을 리디렉션하는 것을 허용합니다. 예를 들어 모든 SMTP 트래픽(포트 25)은 192.168.1.1로 리디렉션됩니다.

하지만 트래픽을 처리할 서버가 여러 개 있는 경우(도메인당 서버 1개) 역방향 프록시(nginxHTTP, IMAP, POP3에 대해 이를 지원합니다. 예를 들어, 포트 80에 대한 모든 트래픽은 192.168.1.2nginx를 실행하는 포트로 리디렉션되고 호스트 이름에 따라 또는 로 리디렉션 localhost됩니다 192.168.1.4.

답변2

귀하의 질문을 완전히 이해했는지 잘 모르겠습니다. 그렇다면 NAT 뒤에 HTTP 서버로 실행되는 여러 컴퓨터가 있습니다. 요청이 도착하면 서버 중 하나로 전달하고 싶겠죠?

Apache와 mod_rewrite를 사용하는 경우 다음과 같이 가져올 수 있습니다.

  1. http://www.linuxquestions.org/questions/linux-networking-3/apache-forward-request-to-another-box-264864/

  2. http://www.sematopia.com/2007/09/apache-forwarding-requests-to-another-server/

건배.

답변3

나는프록시패스Apache의 mod_proxy 아래 지시어.

우선,이름 기반 가상 호스팅서로 다른 도메인이 동일한 IP를 사용하여 서로 다른 사이트를 호스팅하도록 허용하려면 내부 웹 서버에 연결된 도메인의 경우 다음과 같은 구성이 있습니다.

# Within your VirtualHost definition
ServerName somedomain.com
ProxyPass / http://10.0.1.42/
ProxyPassReverse / http://10.0.1.42/

http://somedomain.com그러면 모든 요청이 에서 호스팅되는 내부 사이트로 투명하게 프록시 처리 됩니다 http://10.0.1.42.

HTH

답변4

나는 얼마 전에 같은 것을 찾고있었습니다. 한 번도 그 일을 해본 적이 없지만 여기에 내가 할 수 있는 일이 있습니다.

_proxy 모듈 을 사용 mod하고 noproxy지시문을 사용하십시오.

http://httpd.apache.org/docs/2.2/mod/mod_proxy.html#noproxy

관련 정보