
exampleA.com과 exampleB.com이 있다고 가정해 보겠습니다. exampleA.com을 브라우저에 입력할 때와 같이 websiteA.com에서 websiteB.com으로 Apache 웹 서버를 다시 작성하려는 경우 URL이 유지되고 마치 웹사이트로 이동하는 것처럼 로드된 콘텐츠가 표시됩니다. exampleB.com, 직접 가상 호스트 추가로 이를 어떻게 수행합니까?
내 연구는 다음과 같은 것을 제안합니다.
RewriteRule /some/url(.*) http://exampleB.com/some/url$1 [P,L]
그러나 제가 잘 모르는 것은 "/some/url" 부분의 관련성입니다. 왜냐하면 저는 특정 URI만 재작성하는 것이 아니라 전체 도메인을 재작성하고 싶기 때문입니다.
마찬가지로 exampleA.com/test.htm으로 이동하면 exampleB.com/test에 있는 모든 항목이 렌더링되어야 하며 브라우저는 내내 "exampleA.com/test"라고 말합니다.
답변1
해당 규칙을 전체 도메인에 적용하려면 다음을 원할 것입니다.
RewriteRule /(.*) http://exampleB.com/$1 [P,L]
기본적으로 다음과 같습니다.
ProxyPass / http://exampleB.com/
사용자의 브라우저가 도메인을 가리킬 수 있는 요소가 많이 있다는 점을 명심하세요 exampleB
. 리디렉션을 ProxyPassReverse
처리합니다 30x
.
ProxyPassReverse / http://exampleB.com/
exampleB.com
하지만 HTML 콘텐츠( mod_proxy_html
도움이 될 수 있음), 자바스크립트, CSS 등을 포함하여 콘텐츠의 다른 모든 항목이 를 가리킬 수 있습니다 .
답변2
당신은 할 수 없습니다.
원래 URL을 유지하려면 실제로 examplea를 통해 exampleb를 프록시(ProxyPass 검색)하거나 일종의 프레임 헛소리를 사용해야 합니다.