아래 nginx 구성을 사용하여 토네이도 애플리케이션을 배포한 후
으아아아tornado.log에서 요청된 모든 IP 요청은 다음과 비슷하게 127.0.0.1로 표시됩니다[I 130125 21:44:54 web:1447] 200 GET / (127.0.0.1) 16.00ms
nginx 역방향 프록시를 사용할 때 tornado.log의 IP 주소를 실제 IP로 표시하는 방법은 무엇입니까?
정답: 올바른 nginx 구성 외에도 더 중요한 것은 tornado httpserver
에서 xheaders=True를 설정해야 한다는 것입니다.
tornado.httpserver.HTTPServer(Application(), xheaders=True)
토네이도에도 지나갈 수 있음
으아아아얻으려면 가끔 문제가 있을 수 있습니다. github에서 이 문제를 참조하세요: https://github.com/facebook/tornado/i...
원칙은 일부 HTTP 헤더를 읽는 것입니다
마찬가지로 PHP에서의 구현은 다음과 같습니다:
으아아아역방향 프록시인 경우 nginx에 다음 구성을 추가할 수 있습니다.
Proxy_pass http://frontends;
Proxy_set_header X-Real-IP $remote_addr;
Proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
Proxy_set_header 호스트 $http_host;