다음을 통해 공유


획득한 기호 파일 캐싱

일반적으로 SymProxy는 IIS(인터넷 정보 서비스) 내에 지정된 디렉터리에서 획득한 파일을 연결된 웹 사이트의 가상 루트로 캐시합니다. 그런 다음 IIS는 클라이언트 디버거에서 파일을 사용할 수 있도록 합니다. 디버거는 HTTP에서 직접 파일을 열 수 없으므로 기호 경로로 지정된 로컬 캐시에 파일을 복사합니다.

srv*c:\localcache*https://server/symbols

이 예제에서 클라이언트 디버거는 파일을 c:\localcache에 복사합니다. 이와 같은 상황에서 파일은 SymProxy를 통해 웹 사이트의 가상 루트에 한 번, 디버거에서 로컬 캐시로 다시 두 번 복사됩니다.

두 번째 복사 작업을 방지하고 처리 속도를 높일 수 있습니다. 이렇게 하려면 먼저 웹 사이트의 가상 루트를 디버거에서 액세스할 수 있는 UNC 경로로 공유해야 합니다. 예를 들어 이 경로의 이름은 \\server\symbols입니다. 그런 다음 MIME 형식에 대한 IIS 구성을 제거해야 합니다.

MIME 형식에 대한 IIS 구성을 제거하려면

  1. 관리 도구에서 IIS(인터넷 정보 서비스) 관리자를 엽니다.

  2. 웹 사이트를 확장합니다.

  3. 기본 웹 사이트를 마우스 오른쪽 단추로 클릭합니다.

  4. 기호 가상 디렉터리를 마우스 오른쪽 단추로 클릭하고 속성을 선택합니다.

  5. HTTP 헤더 탭을 클릭합니다.

  6. MIME 형식 을 클릭합니다.

  7. 등록된 MIME 형식으로 레이블이 지정된 목록 상자에서 모든 형식을 선택합니다.

  8. 제거를 클릭합니다.

  9. MIME 형식 대화 상자를 종료하려면 확인을 클릭합니다.

  10. 기호 속성을 종료하려면 확인을 클릭합니다.

이로 인해 IIS는 웹 사이트의 모든 트랜잭션에 대해 디버깅 클라이언트에 파일을 찾을 수 없습니다 . 그러나 SymProxy가 가상 루트를 파일로 채우는 것을 방지하지는 않습니다.

MIME 형식에 대한 IIS 구성을 제거한 후 명령을 사용하여 저장소의 가상 루트에 매핑되는 공유 및 HTTP 저장소에서 먼저 기호를 찾도록 디버거 클라이언트를 구성합니다.

srv**https://server/symbols;srv*\\server\symbols

앞의 예제에서 기호 경로의 첫 번째 요소(srv**https://server/symbols) 는 HTTP 저장소에서 파일을 가져와서 로컬 캐시로 기본 기호 저장소에 복사하도록 합니다. 지정된 캐시는 HTTP 저장소에서 수신된 파일이 없으므로 중요도가 없습니다. 이 오류가 발생한 후 저장소의 가상 루트(srv*\\server\symbols)의 실제 위치에서 파일을 가져오려고 시도합니다. 이 시도는 파일이 이전 경로 처리의 부작용으로 해당 위치에 복사되므로 성공합니다.