2014-11-18 3 views
0

NGINX를 프록시로 사용하면서 '501 구현되지 않음'HTTP 응답을 반환하려고 시도했습니다. 기본 동작은 '405 Method Not Allowed'로 응답하는 것입니다. 누구든지 기본 405 응답을 우회하는 방법을 알고 있습니까?NGINX가 기본 TRACE 동작을 덮어 씁니다.

우리는 아무 소용

if ($request_method !~ ^(GET|HEAD|PUT|POST|DELETE|OPTIONS|CONNECT|TRACE)) { 
    return 501; 
    } 

    error_page 405 =501 @405; 
    location @405 { 
    root     /; 
    proxy_pass    http://localhost:3000; 
    } 

    location/{ 
    proxy_pass   http://localhost:3000; 
    } 

환경

의 nginx 버전을 다음과 같은 구성 옵션을 시도했습니다의 nginx/1.2.1

리눅스 3.2.0-4-AMD64 번호 1 SMP 데비안 3.2.54-2 x86_64 GNU/리눅스

답변

0

프록시 위치 블록에 proxy_intercept_errors on;을 설정하십시오.

+0

Xavier Lucas, 입력 해 주셔서 감사합니다. 그러나 결과에는 아무런 영향이 없습니다. – Corvusoft

+0

@Corvusoft 프록시 또는 nginx 자신이 반환 한 오류 코드 (예 : 정적 ressource)를 덮어 쓰려고하는지 명확히 할 수 있습니까? –

+0

nginx에서 오류 코드 (405)가 반환됩니다. – Corvusoft