Azure에서 사이트 마이그레이션 후 브라우저 쿠키 손상(?)

안녕하세요,

저는 Vultur 호스트에서 Azure(CentOS Linux 환경)로 Discourse 플랫폼을 마이그레이션했습니다. 내장된 데이터베이스 백업 및 복원 과정을 사용하여 마이그레이션은 순조롭게 진행되었습니다. 이후 DNS 위임을 완료했습니다.

일부 사용자(저도 한때 포함)가 /latest.json을 로드할 때 슬픈 얼굴 500 오류를 겪고 있습니다. 모든 경우에서 쿠키/세션을 지우면 문제가 해결되지만, 약 30분 후쯤 다시 발생하는 것 같습니다.

또한 관리자 권한으로 오류 발생 시 설정(Settings) 섹션을 확인해 보니, 다양한 설정 라벨의 키-값 쌍이 언어 로케일로 파싱되지 않은 것을 확인했습니다. 예를 들어 "기본 로케일(default locale)"이 "[en.default_locale]"과 같이 표시되었습니다.

저는 Linux나 Discourse 전문가가 아니므로 이 문제를 어떻게 해결해야 할지 막막합니다. DNS 마이그레이션 이후 시스템이 안정화되는 과정일 수도 있고, 더 큰 문제가 있을 수도 있습니다.

현재까지 보고된 문제는 Windows Chrome에서만 발생했습니다. Edge나 Chrome Android에서는 재현할 수 없었습니다.

/logs를 확인해 보면 다음과 같은 항목이 보입니다:

Job exception: PG::InvalidTextRepresentation: ERROR:  invalid input syntax for type inet:"106.70.36.109:6082" LINE 1: UPDATE "users" SET "ip_address" = '106.70.36.109:6082' WHERE...

도움이 필요하니 조언을 부탁드립니다.

Simon

이것은 잘 알려진 Azure 버그이며, 여기에서 몇 가지 우회 방법이 설명되어 있습니다.

Chromium 기반 Edge인가요, 아니면 Legacy Edge인가요?

우리는 동일한 결론에 도달했고, 실제로도 그랬습니다. Appgw가 사용자 IP 대신 내부 IP를 전송하고 있었고, 이로 인해 Nginx의 플러드 방지 기능이 작동한 것으로 보입니다. Nginx 설정을 업데이트한 결과 문제가 해결되었습니다.