2016-08-17 4 views
0

저는 C# WebApi를 사용하고 있습니다. WebService에 서비스 참조를 추가했습니다. WebService에는 프로젝트에 포함 된 인증서가 있어야합니다.wsdl/soap 문제

이제는 로컬 컴퓨터에서 실행할 때 모든 것이 제대로 작동하는 것이 문제입니다. 그러나 라이브로 배포하면 작동하지 않습니다. 일단 라이브에서 실행하면 응용 프로그램에서 .pfx 파일을 찾을 수 없습니다.이 파일은 프로젝트 및 올바른 위치 (Project 루트)에 확실히 포함되어 있습니다.

HttpContext.Current.Request.MapPath, HttpContext.Current.Server.MapPath를 시도했지만 두 파일 모두 지정된 파일을 찾을 수 없다고 말하기 때문에 작동하지 않는 것 같습니다.

로컬 컴퓨터에서 완벽하게 작동하는 방법을 이해하지 못했지만 실제로는 작동하지 않습니다.

아무도 도와 줄 수 있습니까? 그것은 나를 미치게합니다.

업데이트 : 그래, PFX 파일이 문제가 아님을 알았습니다. 나는 그것이 'File.Exists'로 파일을 찾을 수 있었는지 점검했고 사실 파일을 찾을 수 있습니다. 나는 주어진 경로에서 새 X509Certificate을 만들려고 할 때 오류가 발생한다는 것을 발견했습니다.

X509Certificate cert = new X509Certificate (pfxPath, pfxPassword);

여기에서 pfxPath는 방금 확인한 파일의 경로가됩니다.

답변

1

음, 알아 냈습니다. 내 웹 사이트의 응용 프로그램 풀 고급 설정에서 '사용자 프로필로드'옵션을 'true'로 설정해야했던 것 같습니다.

이제 의도 한대로 작동합니다!