2016-08-08 2 views
2

백엔드 서버에서 404 응답을 받으면 새 위치로 리디렉션하도록 haproxy를 얻으려고합니다. 404를받지 못하면 정상적으로 응답하고 싶습니다.응답 상태 코드를 기반으로하는 haproxy 리디렉션

이 나에게 감각을 만들었지 만, 작동하지 않는 것 :

frontend front 
    option httplog 
    bind *:8080 
    default_backend    app 

backend app 
    balance  roundrobin 
    acl document_request path_beg -i /documents 
    acl not_there status 404 
    http-request redirect location http://newlocation/%[path] if document_request not_there 
    server webserver1 10.10.10.10:8080 check 

나는 다음과 같은 경고받은 :

ACL 'not_there'과 일치하지 않습니다를 단지 호환되지 않는 키워드를 포함하기 때문에 '백엔드 HTTP 요청 헤더 규칙'

내가

이 작업을하는 방법에 대한 아이디어를 CentOS 7. 버전 1.5.14을 사용하고와? 내가하려는 일을 할 수 있습니까?

도움을 주시면 감사하겠습니다.

감사

AL

답변

1

http-request redirect 요청을 검사 조건에 기초하여 요청 (임의로) 리디렉션.

status은 응답 만 검사 할 수 있습니다. 'HTTP 요청 헤더 규칙과 호환되지 않습니다.'는 의미는 status은 http 응답 규칙과 만 호환됨을 의미합니다.

상태 코드를 받았을 때 응답 만 다시 쓸 수 있습니다. 위치 및 상태를 http-response set-header resp로 수정 해보세요. set-status.

버전 1.6 이후로 http-response redirect을 사용할 수 있습니다.