
대본:
IP 수가 제한되어 있으므로 여러 도메인이 동일한 IP 주소로 확인됩니다. 그러나 이러한 도메인은 모두 동일한 웹 서버, VM 또는 전용 시스템에서 실행되지 않을 수도 있습니다. 따라서 사설망에 진입하는 시점의 도메인을 URL의 도메인 조건에 따라 올바른 위치로 라우팅하고 싶습니다.
어떻게 해야 하나요?
답변1
대부분의 라우터/방화벽은 특정 포트를 기반으로 트래픽을 리디렉션하는 것을 허용합니다. 예를 들어 모든 SMTP 트래픽(포트 25)은 192.168.1.1로 리디렉션됩니다.
하지만 트래픽을 처리할 서버가 여러 개 있는 경우(도메인당 서버 1개) 역방향 프록시(nginxHTTP, IMAP, POP3에 대해 이를 지원합니다. 예를 들어, 포트 80에 대한 모든 트래픽은 192.168.1.2
nginx를 실행하는 포트로 리디렉션되고 호스트 이름에 따라 또는 로 리디렉션 localhost
됩니다 192.168.1.4
.
답변2
귀하의 질문을 완전히 이해했는지 잘 모르겠습니다. 그렇다면 NAT 뒤에 HTTP 서버로 실행되는 여러 컴퓨터가 있습니다. 요청이 도착하면 서버 중 하나로 전달하고 싶겠죠?
Apache와 mod_rewrite를 사용하는 경우 다음과 같이 가져올 수 있습니다.
건배.
답변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
지시문을 사용하십시오.