2017-12-15 20 views
2

다른 질문이 몇 개 있었지만 정확히 무엇을 하려는지 전혀 알 수 없습니다..htaccess 포인트 폴더를 다른 IP 주소로

나는 certainfolder/blabla /? foo는 = 바 이 www.anotherwebsite.com/하기 www.mywebsite.com/ 가리켜 야 certainfolder/blabla /? foo는 = 바

그래서, 내 경우 웹 사이트는 '특정 폴더'에 대한 경로를 가지고 있으며 다른 웹 사이트로이 폴더 (다른 모든 URL 세그먼트와 함께 매개 변수 가져 오기)를 가리켜 야합니다.

중요 : URL은 www.mywebsite.com/certainfolder/blabla/?foo=bar로 유지됩니다. www.anotherwebsite.com의 콘텐츠를 가져 가야하지만 URL을 변경할 수는 없습니다.

나는 작동하지 않는, 이런 식으로 뭔가를 시도 :

RewriteEngine on 
RewriteCond %{REQUEST_URI} ^/certainfolder 
RewriteRule ^/$ http://www.anotherwebsite.com/certainfolder/$1 [P,L] 

나는 내가 가상 호스트의 conf 파일에 ProxyPass로하고 ProxyPassReverse을 사용할 수 있습니다 알고 있지만, 나는이 파일을 액세스 할 수 없습니다, 그래서 내가 그것을 할 필요가 .htaccess

나를 도와 줄 수있는 .htaccess 전문가가 있습니까?

+0

[주소 표시 줄의 URL을 변경하지 않고 다른 도메인으로 어떻게 리디렉션 할 수 있습니까?] (https://stackoverflow.com/questions/987343/how 주소 변경없이 다른 도메인으로 리디렉션 할 수 있습니다. – Martin

+0

아니요; 당신이하려고하는 것은 단지 htaccess에서 수행 할 수 없습니다. – Martin

+0

[ProxyPass와 ProxyPassReverse가 htaccess에서 작동 할 수 있습니까?] (https://stackoverflow.com/questions/12808506/can-proxypass-and- proxypassreverse-work-in-htaccess) – iainn

답변

-2

.htaccess 파일에서 리디렉션을 사용하면 이전 페이지를 유지하지 않고도 이전 페이지의 사용자를 새 페이지로 리디렉션 할 수 있습니다. 예를 들어, index.html을 색인 파일로 사용하고 나중에 index.html의 이름을 home.html로 바꾸면 사용자를 index.html에서 home.html로 보내도록 리디렉션을 설정할 수 있습니다. 예를 들면 :

리디렉션 /path/to/old/file/old.html, 그것은 가능하다 mod_proxy를 + mod_proxy_http가을 (/ http2)를 사용하여 자신을 리디렉션하지 않는 웹 사이트를 가정 http://www.example.com/new/file/new.html

+2

OP는 '중요한 것은 URL은 www.mywebsite.com/certainfolder/blabla/?foo=bar로 남아 있습니다. 단지 www.anotherwebsite.com의 콘텐츠를 가져 가야하지만 URL을 변경할 수는 없습니다. 이 대답은 만족하지 않습니다 – arco444

0

RewriteEngine on RewriteRule ^certainfolder/$ http://www.anotherwebsite.com/certainfolder/$1 [P]

[P]는 mod_proxy가 활성화되어있을 때만 작동하며 http mod_proxy_http가 필요합니다.

mod_proxy는 다른 리소스의 요청을 자신의 도메인으로 "프록시"할 수있게합니다.

mod_proxy는 원격 호스트가 아닌 사용자의 호스트에서만 필요합니다. mod_proxy_http는 mod_proxy에 대한 http 요청을 처리하는 부분입니다. (왜냐하면 mod_proxy는 http 이외의 다른 프로토콜도 지원할 수 있기 때문에 모듈화되어 있습니다.) 일반 Linux 설치 명령 줄에 다음을 입력하십시오. a2enmod proxy proxy_http && service apache2 restart

+0

mod_proxy는 원격 호스트가 아닌 자신의 호스트에서만 필요합니다. mod_proxy_http는 mod_proxy에 대한 http 요청을 처리하는 부분입니다. (mod_proxy는 http 이외의 다른 프로토콜에도 사용할 수 있기 때문에 모듈화되어 있습니다.) 일반적인 리눅스 설치에서'a2enmod proxy proxy_http && service apache2 restart'을 사용하십시오. – twicejr

+1

답안을 코멘트에 업데이트하십시오. 건배 – Martin