Utility SpotlightWeb Page Error Toolkit

Lance Whitney

목차

요구 사항
다운로드 및 설치
웹 서버 설정
Web.config 파일 설정
ErrorPage 파일 사용자 지정
IIS 작업

웹에서 작업해 본 사람이라면 웹 마스터든지, IT 관리자든지 또는 보통의 웹 이용자든지 간에 틀림없이 그 무시무시한 404 오류 페이지에 익숙할 것입니다. 이 오류는 원하는 웹 페이지를 찾을 수 없을 때 나타나며, 그 이유도 깨진 링크, 없는 페이지 그리고 URL의 철자가 틀린 경우 등 다양합니다. 하지만 404 오류 페이지는 별로 도움이 되지 않습니다. 페이지를 찾을 수 없다고 알려주면서 그에 대한 몇 가지 가능성 있는 원인을 나열해 주기는 하지만 정확한 정보를 지적해 주지는 않습니다(그림 1 참조).

fig01.gif

그림 1 “not found” 오류

이러한 오류를 만나면 사용자는 당황하기 마련이며 이는 여러분의 조직 웹 사이트를 방문하는 사람들 역시 마찬가지입니다. 페이지를 찾을 수 없는 사용자를 위해 IT 관리자로서 보다 친숙한 형태로 사이트를 구성하기 위한 방법은 없을까요?

사실은 있습니다. 사용자 지정 오류 페이지를 설정하여 일반적인 404 페이지를 대체하면 사이트 방문자들이 문제에 부딪쳤을 때 유용한 세부 내용이 표시되도록 할 수 있습니다. 그리고 여기 사용자 지정 오류 페이지의 디자인 및 구현을 도와 주는 편리한 도구가 있습니다. 바로 Microsoft에서 제공하는 무료 Web Page Error Toolkit입니다.

Web Page Error Toolkit은 IIS를 활용하는 ASP.NET 응용 프로그램입니다. 이 도구 키트에 포함된 ASPX 웹 페이지와 그 밖의 파일들을 수정한 후 IIS를 설정하여 사용자 지정 페이지를 배포하면 됩니다. 오류 페이지는 오류 발생 시 방문자들이 보다 쉽게 올바른 정보를 찾을 수 있도록 검색 결과를 표시해 줍니다.

기본적으로 이 페이지는 Microsoft Live Search 엔진을 사용하여 검색 결과를 생성하지만 원한다면 다른 검색 엔진을 사용할 수도 있습니다. 또한 이 페이지는 URL 또는 검색 문자열의 오타를 대체하는 철자를 제공할 수도 있습니다.

Microsoft도 자사의 사이트에 Web Page Toolkit을 사용하여 방문자들을 돕고 있습니다. 가령 microsoft.com에서 "Microsoft Office"를 검색하는데 "Microsoft Ofice"라고 잘못 입력했다고 합시다. 사용자 지정 오류 페이지는 사용자가 "Microsoft Office"를 입력하려던 것이 아닌지 묻는 메시지를 표시하면서 그림 2에 나타낸 것과 같이 올바른 단어로 검색한 결과의 목록을 제공합니다.

fig02.gif

그림 2 검색 결과를 표시하는 오류 페이지

요구 사항

Web Page Error Toolkit 사용에 필요한 요구 사항은 다음과 같습니다.

  • Windows 2000, Windows Vista, Windows XP, Windows Server 2003 또는 Windows Server 2008
  • IIS 5.0 이상
  • ASP.NET 2.0 이상
  • Visual Studio 2005 이상

다운로드 및 설치

Web Page Error Toolkit은 Live Services에서 다운로드할 수 있습니다. 설명서에 따르면 다운로드한 WebPageErrorToolkitSetup.msi 파일을 웹 사이트의 루트에 설치하는 것이 좋습니다. 하지만 저는 기본 디렉터리인 c:\program files\Microsoft\Web Page Error Toolkit에 설치할 것을 추천하는 바입니다. 그런 다음 필요한 파일과 디렉터리를 해당 서버의 루트로 복사하십시오. 이 방법을 사용하면 어떤 파일을 루트에 저장할지 제어할 수 있습니다. 설치 후에는 User Guide(사용자 가이드) 및 Web Page Error Toolkit Files(Web Page Error Toolkit 파일)라는 두 개의 바로 가기를 포함하는 Web Page Error Toolkit라는 새로운 폴더가 프로그램 메뉴에 나타납니다.

도구 키트 파일에는 다음이 포함됩니다.

Web.config.merge web.config 파일에 필요한 설정을 포함한 파일입니다. ASP.NET 웹 사이트의 web.config 파일에는 여러 가지 섹션으로 구성된 핵심 설정이 포함되어 있습니다.

Errorpage.aspx 일반적인 404 오류 페이지를 대체할 사용자 지정 오류 페이지입니다.

Errorpage.aspx.cs errorpage.aspx와 관련된 코드 숨김 페이지이며 C#으로 작성되어 있습니다.

Errorstyle.css 오류 페이지용 스타일시트입니다.

UserGuide.docx Microsoft Office Word 2007 형식의 설명서입니다.

Readme.rtf web.config.merge 파일로 수행해야 할 작업을 설명한 간단한 문서입니다.

MSPL license.rtf 소프트웨어의 라이선스 정보가 들어 있는 문서입니다.

설치 디렉터리에서 3개의 하위 디렉터리, 즉 App_Code, bin 및 Web References도 찾을 수 있습니다.

웹 서버 설정

루트에 설치하지 않기로 결정한 경우 먼저 필요한 파일들을 해당 웹 서버의 루트로 복사해야 합니다. Errorpage.aspx, errorpage.aspx.cs, errorstyle.css 및 web.config.merge는 반드시 루트로 복사해야 합니다. 3개의 하위 디렉터리 App_Code, bin 및 Web References도 복사하십시오. 해당 웹 서버의 루트에 3개의 하위 디렉터리가 이미 존재할 수도 있으므로 하위 디렉터리를 복사할 때는 주의하십시오. 하지만 이 3개의 디렉터리에 들어 있는 파일은 도구 키트에 특정된 것이고 기존 파일과 충돌할 가능성이 거의 없기 때문에 문제가 발생하지는 않을 것입니다.

Web.config 파일 설정

다음 단계로 web.config 파일을 설정해야 합니다. 웹 서버의 루트에 기존의 web.config 파일이 없다면 web.config.merge를 web.config로 이름을 바꾸어 기본 파일로 사용합니다. 그러나 해당 웹 사이트가 ASP.NET에서 실행되고 있는 상태라면 틀림없이 루트에 이미 web.config가 있습니다. 이 경우 web.config.merge 파일의 내용을 기존 web.config 파일에 병합할 수 있습니다.

그러나 이렇게 하려면 먼저 일부 설정을 변경해야 합니다. 텍스트 편집기나 Visual Studio에서 web.config.merge 파일을 엽니다. 다음 섹션에 해당하는 매개 변수를 찾아 수정합니다.

ErrorPage.AppID Live Search를 검색 엔진으로 사용하려면 search.live.com 웹 사이트에서 먼저 ID를 받아야 합니다. 그런 다음 해당 ID를 이 섹션에 입력합니다.

ErrorPage.CultureInfo 검색이 수행되기를 원하는 문화권/로캘을 입력합니다. 기본값은 영어(미국)을 나타내는 en-US입니다.

ErrorPage.Domain 이 섹션에는 오류 페이지에 표시할 검색 결과를 가져올 위치를 도구 키트에게 알려주기 위해 사용 중인 도메인의 이름을 입력합니다.

ErrorPage.WebSearchResultsNumber 여기에 입력하는 값은 오류 페이지에 나열될 검색 결과의 최대 개수를 나타냅니다. 기본값은 10이고 최대값은 50입니다.

ErrorPage.PerformSpellCheck URL이나 검색 문자열의 오타에 대해 오류 페이지에 바른 철자가 제안되도록 표시하려면 여기에 True 값을 입력합니다.

ErrorPage.SpellingMessage 이 섹션에는 철자 오류 발생 시 표시될 질문의 구문을 입력합니다. 기본 텍스트 문자열은 Were you looking for {suggestion} instead?입니다.

ErrorPage.SearchTitle 후속 검색 쿼리가 올바른 콘텐츠를 제공하지 않을 경우에 표시되는 페이지의 제목입니다. 이 섹션에 제목을 입력하지 않는 경우 "We are sorry, the page you requested cannot be found."라는 문구가 사이트 방문자에게 계속 표시됩니다.

ErrorPage.PrivacyURL, ErrorPage.Sitemap.URL 및 ErrorPage.CopyrightURL 여기에 다른 페이지에 대한 링크를 추가할 수 있으며 링크는 오류 페이지의 바닥글에 표시됩니다.

web.config.merge 파일의 내용을 수정한 다음에는 해당 설정을 기존 web.config 파일에 병합해야 합니다. web.config.merge 파일에는 appSettings 및 system.web이라는 2개의 섹션이 있습니다. appSettings 섹션에 있는 설정은 도구 키트에 고유한 것이므로 문자열을 복사해서 web.config 파일의 같은 섹션에 바로 붙여 넣을 수 있습니다. system.web 섹션은 customErrors에 대한 단일 문자열을 포함합니다. customErrors 문자열이 web.config 파일에 이미 있으면 주석 처리를 제거하고 web.config.merge 파일의 문자열로 교체합니다. 변경하기 전에 기존의 web.config 파일을 항상 백업해 두어야 합니다.

ErrorPage 파일 사용자 지정

다음 단계로 ErrorPage.aspx 파일을 수정할 수 있습니다. 이 파일은 이미 완전히 구성되어 있기 때문에 여기서 해야할 작업은 거의 없습니다. 이 페이지에서 "We are sorry; the page you requested cannot be found"와 "See below for results close to your request" 같은 몇 가지 오류 응답을 직접 선택한 문자열로 변경할 수 있습니다. 마지막으로 errorstyle.css 스타일시트에서 errorpage.aspx 파일에 대한 색, 글꼴, 포인트 크기 및 이와 유사한 속성들을 수정할 수 있습니다.

IIS 작업

최종 단계는 IIS의 사용자 지정 오류 설정을 수정하여 새로운 사용자 지정 오류 페이지를 가리키도록 하는 것입니다. 이 과정은 사용하고 있는 IIS 버전에 따라 다릅니다.

IIS 5.0 또는 IIS 6.0의 경우 다음 단계를 수행합니다.

  1. IIS를 엽니다.
  2. 사용자 지정할 웹 사이트를 선택합니다.
  3. 마우스 오른쪽 단추로 사이트를 클릭하고 팝업 메뉴에서 속성을 선택합니다.
  4. 웹 사이트 속성 창에서 사용자 지정 오류 탭을 클릭합니다.
  5. HTTP 오류 목록을 아래로 스크롤한 후 사용자 지정하려는 대상을 선택합니다. 이 기사의 내용에 맞춰 404를 선택합니다.
  6. 편집 단추를 클릭합니다.
  7. 메시지 유형 드롭다운 상자에서 URL을 선택합니다.
  8. URL 필드에 /ErrorPage.aspx를 입력합니다. 확인을 클릭합니다.

IIS 7의 경우 다음 단계를 수행합니다.

  1. IIS를 엽니다.
  2. 사용자 지정할 웹 사이트를 선택합니다.
  3. 사용자 지정 오류 페이지 아이콘을 두 번 클릭합니다.
  4. 상태 코드 목록을 아래로 스크롤한 후 404 코드를 두 번 클릭합니다.
  5. 경로 유형 드롭다운 상자에서 실행 URL을 선택합니다.
  6. 경로 필드에 /ErrorPage.aspx를 입력합니다. 확인을 클릭합니다.

이제 여러분의 오류 페이지를 테스트해 볼 수 있습니다. 사이트의 홈 페이지를 엽니다. 주소 필드에서 URL에 사이트의 하위 페이지를 덧붙이면서 일부러 틀린 철자를 입력해 봅니다. 사용자 지정한 오류 페이지가 나타나고 제안된 올바른 철자 및 가능한 검색 결과의 목록이 표시됩니다.

방문자가 여러분의 사이트에서 원하는 것을 항상 찾을 수 있도록 하지는 못하더라도 사용자 지정 오류 페이지를 제공하여 방문자의 당혹감을 덜어줄 수는 있습니다.

Lance Whitney는 IT 컨설턴트 겸 강사이자 테크니컬 라이터입니다. Windows 워크스테이션과 서버를 분석하고 성능을 향상시키는 데 많은 시간을 할애하고 있습니다. 원래 저널리스트였던 그는 15년 전 IT 업계에 발을 들여 놓았습니다.