springboot 응용 nginx 부하, sso 로그 인 분실 session 문제.
2003 단어 nginx
최근 프로젝트 가 출시 되면 서 정식 환경 에 배 치 된 후 SSO 로그 인 에 문제 가 생 겨 며칠 째 어려움 을 겪 고 있다.
다음은 다음 문 제 를 살 펴 보 겠 습 니 다. spring boot 프로젝트 는 sso 로그 인 을 통합 하여 정식 환경 에 배치 합 니 다. 단일 응용 서비스 가 시 작 된 후에 정상 적 인 sso 로그 인 을 합 니 다. 더 블 응용 프로그램 이 시 작 된 후에 첫 번 째 로그 인 은 정상 적 이 고 두 번 째 SSO 로그 인 은 우리 의 springboot 프로젝트 자체 로그 인 입구 로 이동 합 니 다.각종 사고 테스트 의 최종 포 지 셔 닝 문 제 는 session 이나 쿠키 분실 이다.
이 유 는 Nginx 프로필 에 ip 가 하나 덜 설정 되 어 있 기 때 문 입 니 다.hash 로 인 한:
IP_HASP 정책 설명: nginx 의 upstream 은 기본적으로 폴 링 방식 으로 부하 균형 을 실현 합 니 다. 이 방식 에서 모든 요청 은 시간 순서에 따라 서로 다른 백 엔 드 서버 에 할당 되 며 백 엔 드 서버 다운 이 떨 어 지면 자동 으로 제거 할 수 있 습 니 다.다른 방식 은 iphash: 모든 요청 은 ip 에 접근 하 는 hash 결과 에 따라 분 배 됩 니 다. 그러면 모든 방문객 이 백 엔 드 서버 에 고정 적 으로 접근 하면 session 문 제 를 해결 할 수 있 습 니 다.
아래 에 nginx 중요 코드 를 첨부 합 니 다:
upstream portal_server {
server 192.168.1.11:8080 max_fails=2 fail_timeout=30s;
server 192.168.1.12:8080 max_fails=3 fail_timeout=30s;
ip_hash;
}
upstream sso_server {
server 192.168.1.11:8080 max_fails=2 fail_timeout=30s;
server 192.168.1.12:8080 max_fails=3 fail_timeout=30s;
ip_hash; # , session
}
server {
listen 80;
server_name xxxxx.com.cn;
location / {
proxy_pass http://portal_server/;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location /sso/ticket {
proxy_pass http://sso_server/sso/ticket;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
server {
listen 80;
server_name 13;
location / {
proxy_pass http://portal_server/;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 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에 따라 라이센스가 부여됩니다.