ASP.NET Core 프록시 설정: launchSettings.json과 프로덕션
개발용 시작 프로필의 프록시 값을 배포된 ASP.NET Core 프로세스가 사용하는 환경 및 HTTP 처리기와 구분합니다.
launchSettings.json의 프록시 값은 개발용 시작 프로필에 속합니다. 애플리케이션을 게시해도 그 프로필이 IIS 작업자 프로세스, 서비스 또는 컨테이너의 환경이 되지는 않습니다.
배포된 환경에서 실패하면 실제로 애플리케이션을 시작하는 프로세스를 조사하십시오. 그 프로세스의 환경, 계정, HTTP 처리기가 어떤 프록시 입력을 사용할 수 있는지 결정합니다.
| 작동하는 위치 | 배포 후 비교할 항목 |
|---|---|
| IDE 시작 프로필 | 호스트 프로세스의 환경 |
| 대화형 사용자 세션 | 서비스 계정과 해당 프록시 설정 |
| 수동으로 만든 HTTP 클라이언트 | 애플리케이션이 주입한 클라이언트가 사용하는 처리기 |
최신 HttpClient의 기본 프록시 초기화에는 플랫폼별 환경 규칙과 시스템 구성 규칙이 있습니다. 명시적으로 구성된 처리기는 이러한 기본값을 재정의할 수 있습니다. IHttpClientFactory를 사용하는 경우 명명된 클라이언트의 기본 처리기 등록과 호출 지점에서 가져온 이름을 확인하십시오. 구성 파일이 무시되었다고 결론 내리기 전에 두 입력을 모두 확인하십시오.
.NET Framework의 오래된 system.net/defaultProxy 예제는 다른 구성 모델을 설명합니다. 해당 섹션을 최신 배포 파일에 붙여 넣고 모든 .NET HTTP 구현이 이를 사용한다고 가정하지 마십시오. IIS 배포에서는 ASP.NET Core 모듈에도 지원되는 프로세스 환경 구성 메커니즘이 있습니다. 값을 추가할 때 호스팅 구성의 나머지 부분을 유지하십시오.
자격 증명이 포함된 전체 값을 공개하지 않고 예상 변수가 존재하는지 기록하십시오. 그런 다음 실패한 요청을 수행하는 클라이언트가 그 출처를 사용하는지 확인하십시오. 올바르게 구성된 시작기는 의도적으로 다른 경로를 사용하는 클라이언트를 고칠 수 없습니다.