nginx 로 django 사 이 트 를 배치 하 는 중 오류 가 발생 했 습 니 다.

nginx 로 django 사 이 트 를 배치 하 는 중 오류 가 발생 했 습 니 다.
사이트 에서 flup 으로 대 리 를 합 니 다. nginx 설정 부분 은 다음 과 같 습 니 다.
location / {
    proxy_connect_timeout    60;
    proxy_read_timeout       60;
    proxy_send_timeout       60;

    include fastcgi_params;
    fastcgi_read_timeout 60;
    fastcgi_pass 127.0.0.1:6000;
    fastcgi_param PATH_INFO $fastcgi_script_name;
}

django 에 게 는 PATH 를 사용 해 야 합 니 다.INFO, 그래서 넣 었 습 니 다 fastcgi_param PATH_INFO $fastcgi_script_name;.그리고 문제 도 생 겼 어 요. 모든 url 을 찾 을 수 없어 요.django 로 그 를 통 해 모든 url 이 중복 되 었 습 니 다. 예 를 들 어 / api 가 / api / api / 로 변 했 습 니 다.
문 제 는 fastcgiparams 의 내용
nginx 의 / etc / nginx / fastcgiparams 파일 내용 은 다음 과 같 습 니 다:
fastcgi_param  QUERY_STRING       $query_string;
fastcgi_param  REQUEST_METHOD     $request_method;
fastcgi_param  CONTENT_TYPE       $content_type;
fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
fastcgi_param  REQUEST_URI        $request_uri;
fastcgi_param  DOCUMENT_URI       $document_uri;
fastcgi_param  DOCUMENT_ROOT      $document_root;
fastcgi_param  SERVER_PROTOCOL    $server_protocol;
fastcgi_param  HTTPS              $https if_not_empty;

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;

fastcgi_param  REMOTE_ADDR        $remote_addr;
fastcgi_param  REMOTE_PORT        $remote_port;
fastcgi_param  SERVER_ADDR        $server_addr;
fastcgi_param  SERVER_PORT        $server_port;
fastcgi_param  SERVER_NAME        $server_name;

# PHP only, required if PHP was built with --enable-force-cgi-redirect
fastcgi_param  REDIRECT_STATUS    200;`

그 중에서 fastcgi_param SCRIPT_NAME $fastcgi_script_name;fastcgi_param PATH_INFO $fastcgi_script_name; 의 역할 은 request.path = SCRIPT_NAME/PATH_INFO/ 에 해당 하여 url 이 중복 되 는 현상 을 초래 했다.

좋은 웹페이지 즐겨찾기