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 이 중복 되 는 현상 을 초래 했다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
간단! Certbot을 사용하여 웹 사이트를 SSL(HTTPS)화하는 방법초보자가 인프라 주위를 정돈하는 것은 매우 어렵습니다. 이번은 사이트를 간단하게 SSL화(HTTP에서 HTTPS통신)로 변경하는 방법을 소개합니다! 이번에는 소프트웨어 시스템 Nginx CentOS7 의 환경에서 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.