파운드 프록시를 사용하여 모든 요청을 https://www 버전으로 리디렉션

파운드 프록시를 사용하여 모든 요청을 https://www 버전으로 리디렉션

http를 통해 웹 사이트에 대한 모든 요청을 다음으로 리디렉션하도록 파운드 프록시 구성 파일을 구성하려고 합니다.https://www.example.com. 또한 요청이 필요합니다.https://example.com리디렉션되도록https://www.example.com.

지금까지 다음 코드가 있으며 작동합니다.

ListenHTTP
    Address xx.xx.xx.xx
    Port 80

  Service
      HeadRequire "Host:.*example.com.*"
      Redirect "https://www.example.com"
  End

End

Service
    BackEnd
        Address xx.xx.xx.xx
        Port    8888
    End
End
ListenHTTPS
  Cert "/home/path/to/subdomain/ssl.everything"
  Cert "/home/example/ssl.everything"
  Address xx.xx.xx.xx
  Port    443
  HeadRemove "X-Forwarded-Proto"
  AddHeader "X-Forwarded-Proto: https"
  Ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384..."
        Service
            URL     "^(/|.*)$"
            Redirect "https://www.example.com"
        End
End

그러나 ListenHTTP에서 규칙을 만드는 방법을 알 수 없습니다.

  Service
      HeadRequire "Host:.*example.com.*"
      Redirect "https://www.example.com"
  End

동일한 도메인의 다른 하위 도메인을 존중합니다. 불행하게도 현재 모든 하위 도메인도 다음으로 리디렉션되고 있습니다.https://www.example.com.

ListenHTTPS 부분의 규칙에서도 동일한 문제가 발생합니다. 모든 요청을 다음으로 리디렉션합니다.https://www.example.com:

        Service
            URL     "^(/|.*)$"
            Redirect "https://www.example.com"
        End

반면에 나는 단지https://example.com리디렉션되도록https://www.example.com.

동일한 IP의 다른 모든 도메인과 하위 도메인을 제외하기 위해 봇 ListenHTTP 및 ListenHTTPS 블록에 대한 올바른 패턴은 무엇입니까?

답변1

명심하세요: 첫 번째 적용 규칙이 적용됩니다! 기본적으로 규칙 목록의 맨 끝에 와일드카드 규칙을 만들어야 합니다.

관련 정보