2014-09-24 2 views
3

정적 파일에 대해 404 오류 페이지를 표시하려면 어떻게해야합니까?정적 파일에 대한 Tornado 사용자 정의 오류 처리기

[ 
    (r'/(favicon.ico)', tornado.web.StaticFileHandler, {"path": mypath}), 
    (r'/foo',FooHandler), 
    (r'/bar',BarHandler), 
    (r'/(.*)',ErrorHandler), 
] 

를 다음과 같이 내 현재 응용 프로그램 핸들러에서

나는 마지막 패턴을 추가하고 내가 내 사용자 지정 404 페이지

을 얻고있다 http://localhost/abc을 방문하면이 내 오류 처리기

class ErrorHandler(BaseHandler): 

    def get(self,d): 
     self.status_code = 404 
     self.show404(d) 

입니다

하지만 얻으려고하면 아래와 같이 추한 오류가 발생합니다.

line 2286, in validate_absolute_path 
raise HTTPError(404) 
HTTPError: HTTP 404: Not Found 

이 방법을 사용할 수 있습니까? 정적 파일에 대한 사용자 정의 오류 페이지를 표시하려면 어떻게합니까?

답변

1

이것은 약간 까다 롭습니다. StaticFileHandler를 서브 클래스 화하고 write_error 메소드를 대체 한 다음, static_handler_class 어플리케이션 설정으로 해당 클래스를 설치해야합니다.

관련 문제