Pound를 통해 Location 헤더를 반환하는 경우
http로 액세스 할 때 https로 리디렉션하고 싶지만 왜 http가되는 현상이 있습니다.
구체적으로
80port 액세스는 Pound에서받습니다.
Pound는 Apache의 VirtualHost 8080으로 전송합니다.
Apache는 Mod_rewrite를 사용하여 URI를 유지하면서 https로 리디렉션합니다.
Apache에서 “Location: https://hoge.jp/”라는 헤더 첨부로 출력된다
Pound가 요청한 기기로 반환
단순한 역방향 프록시 처리입니다.
Pound가 왜 "Location: htps : // 허리. jp/ "을 "Location: h tp:// jp/ "로 변경합니다.
입니다.
해결책은 RewriteLocation 0을 넣는 것이 었습니다.
ListenHTTP
Address 0.0.0.0
Port 80
Client 120
xHTTP 1
AddHeader "X-Forwarded-Port: 80"
RewriteLocation 0
Service
HeadRequire "Host: hoge.jp"
BackEnd
Address 127.0.0.1
Port 8002
Priority 1
End
End
End
man pound에서 문서를 읽으면 · ·
RewriteLocation 0|1|2
If 1 force Pound to change the Location: and Content-location: headers in responses. If they point to the back-end itself or to the
listener (but with the wrong protocol) the response will be changed to show the virtual host in the request. Default: 1 (active).
If the value is set to 2 only the back-end address is compared; this is useful for redirecting a request to an HTTPS listener on the
same server as the HTTP listener.
아무래도 틀리거나 하고 있는 것을 수정해 주는 것 같은 기능인 것 같습니다만···
여러 가지 시도했지만 동일한 호스트 이름의 경우 Schema는 원래와 동일하게 유지하는 경향이 있습니다.
다른 도메인으로 리디렉션할 때는 그대로 합니다.
Pound + apache나 PHP(Header("Location: https://~);)로 http->https로 리디렉션시킨 경우
의도하지 않은 움직임을 한 경우는 보면 좋다고 생각합니다.
Reference
이 문제에 관하여(Pound를 통해 Location 헤더를 반환하는 경우), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/imaiworks/items/e5ec64b1b565388d6ca4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)