아파치 사용 사례

아파치 사용 사례

나는 Apache를 사용하여 SSL 인증서를 사용하여 포트 443의 홈 서버에서 전 세계 여러 사이트를 제공합니다. 어젯밤에 구성 파일을 통해 정의된 포트에서만 사이트를 제공하는 Linux 바이너리를 설치했습니다. Apache가 사이트를 직접 제공하도록 하는 것은 불가능합니다.

따라서 이 사이트는 다음에서 호스팅됩니다.http://127.0.0.1:8081/하지만 443 이상의 Apache 뒤에 숨기고 싶습니다.https://myserver.duckdns.org/webapp/

지금까지 내 사이트 구성 파일에서 이것을 시도했지만 작동하지 않았습니다.

ProxyRequests off
<Proxy *>
        allow from all
</Proxy>

RewriteEngine On
RewriteRule ^/(.*) /webapp/$1 [P]

<Location /webapp/>
        ProxyPass http://127.0.0.1:8081/
        ProxyPassReverse http://127.0.0.1:8081/
</Location>

어떻게 할 수 있는지 아시나요?

ProxyPass와 RewriteRules를 사용하여 이 작업을 수행할 수 있다고 생각했지만 제대로 작동하지 못하는 것 같습니다.

미리 감사드립니다!

답변1

재작성 규칙은 a) 잘못된 대상이 있고 2) 중복됩니다.

RewriteRule은 [P]다음과 같이 사용됩니다.대안ProxyPass와 함께 사용하지 마세요. [P] 규칙의 다시 쓰기 대상은 로컬 URL이 아닌 원격 웹앱 URL입니다. 예를 들어 다음을 사용할 수 있습니다.

RewriteRule ^/webapp/(.*) http://127.0.0.1:8081/$1 [P]

또는이것:

ProxyPass /webapp/ http://127.0.0.1:8081/

또는이것:

<Location /webapp/>
    ProxyPass http://127.0.0.1:8081/
</Location>

(참고: Apache 문서에서는 가능하면 ProxyPass를 사용할 것을 권장합니다.)

귀하의 <Proxy *>차단은 다음에만 적용되므로 불필요합니다.앞으로클라이언트가 프록시 대상(비활성화한)을 지정하는 프록시.

관련 정보