0
내가 nginx를 요청 도메인에 따라 적절한 동의 언어 헤더를 설정하고 싶은에 헤더 언어 동의 en-US
www.domain.de 설정 de-DE
매핑의 nginx (장고)와 도메인
www.domain.eu Django가 브라우저에서 헤더를 가져 오도록하지 마십시오. 위의 3 개 도메인에 대해 영어 사용자가 www.domain.ru (러시아어 사용을 강제)로 입력하면 accept-language 헤더도 변경됩니다 ( ).
server {
listen 1.1.1.1;
server_name domain.eu www.domain.eu domain.de www.domain.de domain.com www.domain.com domain.ru www.domain.ru;
if($host ~* (.*)\.ru) {
set $http_accept_language 'ru-RU';
}
location/{
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_connect_timeout 10;
proxy_read_timeout 10;
proxy_pass http://127.0.0.1:8888/;
}
}
이 (gunicorn를 통해 장고를 실행) 내 설정의 일부입니다 :
여기 내의 nginx의 설정입니다. Django는 세션 언어가 설정되지 않은 경우 accept-language
헤더를 확인합니다.
내'location /'지시어와 코드에'proxy_set_header Accept-Language $ language;'를 추가하면 도움이됩니다. 감사! – Robert