특정 컨텍스트 경로에서 프록시를 사용하려면 어떻게 해야 합니까?

특정 컨텍스트 경로에서 프록시를 사용하려면 어떻게 해야 합니까?

현재 컨텍스트를 사용하여 "프로필"(앱 속성 및 JDBC 연결 문자열 정의)을 선택하는 애플리케이션을 재배치하고 있습니다.

현재 URL은 다음과 같습니다.https://www.foo.com/test/company/profil-name/ 그러면 다음으로 리디렉션됩니다.https://www.foo.com/test/company/profil-name/web/online 그러나 API 컨텍스트와 같은 다른 것들도 있습니다: https://www.foo.com/api/profile-name/

현재 애플리케이션이 프런트엔드와 백엔드에서 apache + haproxy를 사용하고 있다는 것을 알고 있습니다.

Web => apache => local haproxy => backend haproxy => application backend

내 문제는 여기서 동일한 구성을 재현하려고 하는데 프록시가 제대로 작동하지 않는다는 것입니다(수정된 호스트 파일로 테스트).

https://www.foo.com/test/company/profil-name/다음으로 리디렉션됩니다.https://www.foo.com/web/test/company/profil-name/online

이는 애플리케이션이 초기 컨텍스트를 옵션 문자열로 사용하는 것과 같습니다.

나는 haproxy/apache 구성에 몇 가지 조합을 만들었고 프로필 컨텍스트 선택 없이 간단한 역방향 프록시 구성을 사용할 때 작동합니다(프로필이 하나만 있다는 점을 제외하면...).

https://www.foo.com/web/online

이미 이런 행동이 있었나요? 나는 haproxy 1.8과 Apache httpd 2.4를 사용합니다.

내 haproxy 구성은 다음과 같습니다.

frontend default
        bind *:80
        capture request header X-Forwarded-For len 15
        acl rest_url path /api
        acl rest_url path_beg /api/
        acl app1_profile path_beg /test/company/app1
        acl app2_profile path_beg /test/company/app2

        use_backend app3 if rest_url 
        use_backend app1 if app1_profile
        use_backend app2 if app2_profile

backend app1
        cookie SERVERID insert indirect nocache httponly
        #http-request redirect location http://test.domain.com%[url,regsub(^/web/,/test/company/app1/web/,)]%[query] if { path_beg /web/ }
        #http-request set-var(txn.path) path
        #http-response redirect location https://test.domain.com/test/company/app1/var(txn.path) if ! { path_beg /test/ }
        #reqirep ^Host:\ .*$ Host:https://test.domain.com/test/company/app1/
        server app1_backend 192.168.10.15:80

아파치 구성:

   ProxyRequests On
   ProxyPreserveHost On

   <Location /test/company/app1/>
      ProxyPass http://localhost:80/
      ProxyPassReverse http://localhost:80/
   </Location>

작동하는 구성을 갖기 위해 몇 시간을 보냈지만 여전히 작동하지 않습니다. 누군가가 나를 도울 수 있기를 바랍니다.

고마워요,
세바스찬

관련 정보