
웹 서비스를 호스팅하기 위해 내부 웹사이트를 설정하고 있습니다.
웹사이트에 DNS 항목이 있습니다 service.test.company.local
. 회사는 company.local
내부 애플리케이션을 위한 DNS 영역을 사용하며 이 항목은 모든 DNS 요청에 자동으로 접미사로 붙습니다.
따라서 를 조회하면 service.test
전체 이름과 올바른 IP 주소가 확인됩니다.
service.test
IIS 6 사이트는 IP 주소가 확인되는 포트 80에서 수신 대기하도록 구성되어 있습니다 .
을 통해 이 사이트에 접속하려고 하면 service.test.company.local
주소가 확인되고 서비스가 올바르게 표시됩니다.
을 통해 이 사이트에 액세스하려고 하면 service.test
500 - 내부 서버 오류를 보고하는 IIS 오류 페이지가 표시됩니다.
웹 사이트의 로그 파일이나 애플리케이션 이벤트 로그에 이 요청에 대한 항목이 생성되지 않습니다.
오류가 어디서 발생하는지 이해할 수 없으며 IIS가 제공하는 정보가 부족하여 정말 실망스럽습니다.
문제나 해결책에 대한 아이디어가 있습니까? 확인할 수 있는 다른 정보 소스가 있나요?
편집하다:
IIS의 불친절한 오류는 다음과 같습니다.
알 수없는 호스트
설명: "service.test"라는 서버를 찾을 수 없습니다. --- 서버에 DNS 항목이 없습니다. 서버 이름에 철자가 틀리거나 서버가 더 이상 존재하지 않을 수 있습니다. 이름을 다시 확인하고 다시 시도하세요.
편집: 2
나는 이것이 조직이 DNS 항목을 설정한 방식과 관련이 있다고 생각합니다. 내 호스트 파일에 접두사가 붙은 다른 항목을 추가하고 로컬에서 사이트에 대한 올바른 해결 방법을 얻을 수 있습니다.
이 문제는 잠재적인 문제를 제안하기 위해 DNS 전문가가 필요하다고 생각합니다. 안타깝게도 DNS 항목에 대한 권한이 없기 때문에 많은 고통이 예상됩니다.
답변1
운영 팀을 참여시킨 후 프록시 서버가 요청을 로컬 네트워크로 우회하는 대신 요청을 처리하려고 시도했다는 답변이 나왔습니다.
반환되는 오류 메시지는 IIS 서버가 아닌 프록시 서버에서 발생합니다. 이 정보는 운영 팀 구성원이 HTTP 요청이 예상한 대로 프록시 우회 정보를 보내지 않는다는 것을 발견했을 때 우연히 발견되었습니다.
프록시 우회 규칙에는 *.company.local
다른 접미사가 없는 주소에 대해 작동하고 정규화된 이름에 대한 우회를 제공하는 가 포함되지만 과 같은 다른 접미사가 사용되는 경우에는 적용되지 않는 것 같습니다 .test
.
이를 통해 우리는 문제가 해결하기에는 너무 지저분하다고 판단했으며 "충분히 좋은" 해결 방법으로 정규화된 이름을 사용할 것입니다.
답변2
프로그래밍 영웅,
특정 웹사이트에서 service.test에 대한 사이트 호스트 헤더를 설정하셨나요? 1개의 IP 주소 지원에 대한 여러 사이트로 인해 IIS는 호스트 헤더를 사용하여 포트 80에서 호스팅할 때를 구별합니다.
웹 사이트의 속성을 클릭한 다음 고급을 클릭하고 호스트 헤더를 추가하고 공백인 service.test를 입력합니다. DNS가 IP 등으로 확인되는 경우... 문서에 올바른 기본 페이지가 있는지 확인하세요. 로드해야지..
HTML이 로드되는지 확인하기 위해 hello world를 시도해 보십시오.
REgd
답변3
프로그래밍 영웅,
좋은 점은 CodingGorilla입니다. 오류는 호스트 헤더 문제에서 발견되는 오류가 아닙니다. 내부 오류가 다른 문제를 가리키는 것 같습니다.
사이트의 응용 프로그램 풀을 살펴볼 수 있습니까? 네트워크 서비스를 ID로 사용하고 있습니까? 하다http://localhost찾을 수 없는 오류 문서를 로드하거나 제공합니까? 새 사이트를 만들고 그 사이트로 시도해 볼 수도 있습니다. localhost가 htm 파일과 함께 로드되면 해당 특정 사이트가 꺼져 있는 메타베이스의 무언가일 수 있습니다.
Regds
답변4
귀하의 편집 내용에 따르면 IIS 서버에 전혀 영향을 미치지 않는다고 생각합니다. 언급한 대로 요청은 IIS 로그에 전혀 표시되지 않으며 이러한 종류의 오류는 IIS가 제공하는 오류 종류처럼 보이지 않습니다.
호스트 파일(c:\windows\system32\drivers\etc\host)을 편집하고 다음 항목을 추가해 보세요.
service.test 127.0.0.1
이렇게 하면 service.test 요청이 IIS 서버로 이동하는지 확인해야 합니다(설명에서 언급한 대로 IIS 서버 자체에서 요청한다고 가정).
작동한다면 서버에서 이름 확인이 구성되는 방식에 문제가 있을 가능성이 높습니다. 즉, 'company.local' 도메인이 DNS 검색 접미사 목록에 없다는 뜻입니다.