ASP.NET 호스팅 옵션(VB)

작성자 : Scott Mitchell

PDF 다운로드

ASP.NET 웹 애플리케이션은 일반적으로 로컬 개발 환경에서 설계, 생성 및 테스트되며 릴리스 준비가 되면 프로덕션 환경에 배포해야 합니다. 이 자습서에서는 배포 프로세스에 대한 대략적인 개요를 제공하고 이 자습서 시리즈를 소개합니다.

소개

웹 애플리케이션은 일반적으로 사이트에서 작업하는 프로그래머만 액세스할 수 있는 개발 환경에서 설계, 생성 및 테스트됩니다. 애플리케이션을 릴리스할 준비가 되면 인터넷의 모든 사용자가 사이트에 액세스할 수 있는 프로덕션 환경으로 이동됩니다. 이 배포 프로세스에는 다음과 같은 여러 가지 문제가 발생합니다.

  • ASP.NET 애플리케이션을 배포하려면 프로덕션 환경이 존재하고 제대로 설정되어야 합니다. 또한 최신 보안 패치를 사용하여 프로덕션 환경을 최신 상태로 유지해야 합니다.
  • 올바른 태그 파일, 코드 파일 및 지원 파일 집합을 개발 환경에서 프로덕션 환경으로 복사해야 합니다. 데이터 기반 애플리케이션의 경우 데이터베이스 스키마 및/또는 데이터도 복사해야 할 수 있습니다.
  • 두 환경 간에 구성 차이가 있을 수 있습니다. 개발 환경에서 사용되는 데이터베이스 연결 문자열 또는 전자 메일 서버는 프로덕션 환경과 다를 수 있습니다. 또한 애플리케이션의 동작은 환경에 따라 달라질 수 있습니다. 예를 들어 개발 시 오류가 발생하면 오류의 세부 정보를 화면에 표시할 수 있지만 프로덕션 환경에서 오류가 발생하면 사용자에게 친숙한 오류 페이지가 대신 표시되고 오류 세부 정보가 개발자에게 이메일로 전달되어야 합니다.

프로덕션 환경을 설정하고 유지 관리하는 첫 번째 과제를 해결하기 위해 많은 개인과 기업이 프로덕션 환경을 웹 호스팅 공급자에게 아웃소싱합니다. 웹 호스팅 공급자는 사용자를 대신하여 프로덕션 환경을 관리하는 회사입니다. 다양한 가격과 서비스 수준을 가진 수많은 웹 호스트 공급자가 있습니다. 이러한 서비스 공급자를 찾는 방법에 대한 팁은 "웹 호스트 공급자 찾기" 섹션을 참조하세요.

웹 호스트 공급자가 관리하는 프로덕션 환경에 ASP.NET 웹 애플리케이션을 배포하는 단계와 관련된 단계를 살펴보는 일련의 자습서 중 첫 번째 자습서입니다. 이러한 자습서를 진행하는 동안 다음을 살펴봅니다.

  • 웹 호스트 공급자에 배포해야 하는 파일입니다.
  • 배포 프로세스를 간소화하기 위한 도구입니다.
  • 데이터베이스를 배포하는 방법.
  • 프로덕션 환경에서 웹 사이트 관리 도구를 모방하는 방법과 함께 SQL 기반 멤버 자격 및 역할 공급자를 사용하는 데이터베이스를 배포하기 위한 팁입니다.
  • 개발 중에 변경된 내용으로 프로덕션 환경에서 데이터베이스를 원활하게 업데이트하기 위한 전략입니다.
  • 프로덕션에서 발생하는 오류를 로깅하는 기술 및 오류가 발생할 때 개발자에게 알리는 방법입니다.

이러한 자습서는 간결하고 프로세스를 시각적으로 안내하는 다양한 스크린샷이 포함된 단계별 지침을 제공하도록 준비되었습니다. 이 첫 번째 자습서에서는 ASP.NET 배포 프로세스에 대한 개요와 웹 호스팅 공급자를 찾는 방법에 대한 조언을 제공합니다. 그럼 시작하겠습니다.

ASP.NET 배포 프로세스 개요

간단히 말해서 ASP.NET 애플리케이션 배포에는 다음 세 단계가 포함됩니다.

  1. 프로덕션 환경에서 웹 애플리케이션, 웹 서버 및 데이터베이스를 구성합니다.
  2. ASP.NET 페이지, 코드 파일, 폴더의 Bin 어셈블리 및 CSS 및 JavaScript 파일과 같은 HTML 관련 지원 파일을 동기화합니다.
  3. 데이터베이스 스키마 및/또는 데이터를 동기화합니다.

웹 애플리케이션에 대한 구성 정보는 일반적으로 파일에 있으며 Web.config 데이터베이스 연결 문자열, 오류 처리 조건, URL 다시 쓰기 규칙 및 전자 메일 서버 정보를 포함합니다. 종종 이 정보는 개발 중인 애플리케이션과 프로덕션의 동일한 애플리케이션에 대해 다릅니다. instance 경우 애플리케이션을 개발할 때 프로덕션 데이터베이스에 대해 테스트하지 않도록 개발 데이터베이스를 사용하는 것이 가장 좋습니다. 결과적으로 데이터베이스 연결 문자열은 일반적으로 개발 애플리케이션과 프로덕션 애플리케이션 간에 다릅니다. 이러한 차이로 인해 배포의 일부에는 웹 애플리케이션의 구성 정보를 변경하는 작업이 포함됩니다.

웹 애플리케이션 구성 변경 외에도 1단계는 웹 서버 및 데이터베이스에 대한 구성을 수반할 수 있습니다. 예를 들어 ASP.NET 페이지가 웹 서버의 디렉터리에서 파일을 만들거나 삭제하는 경우 이러한 파일 시스템 수정을 허용하도록 웹 서버를 구성해야 합니다. 마찬가지로 데이터베이스에 대해 수행해야 하는 권한 또는 인증 설정이 있을 수 있습니다.

2단계에는 필수 ASP.NET 페이지 집합을 동기화하고 개발 환경과 프로덕션 환경 간에 지원 파일을 동기화하는 작업이 포함됩니다. 두 환경 간에 동기화해야 하는 특정 ASP.NET 관련 파일 집합은 Visual Studio에서 만든 프로젝트 유형에 따라 달라지고 다음 자습서인 배포해야 할 파일 결정의 설명입니다. 세 번째 및 네 번째 자습서인 FTP를 사용하여 사이트 배포Visual Studio를 사용하여 사이트 배포 - 이러한 파일을 동기화하기 위한 다양한 도구와 기술을 살펴봅니다.

데이터 기반 애플리케이션을 빌드할 때 일반적으로 두 개의 데이터베이스가 사용됩니다. 하나는 개발용이고 다른 하나는 프로덕션용입니다. 개발 중에 개발 데이터베이스의 스키마는 새 테이블, 열, 저장 프로시저 및 트리거를 포함하도록 수정되거나 기존 데이터베이스 개체를 제거하거나 이름을 바꾸도록 수정될 수 있습니다. 이러한 변경이 수행된 시간과 애플리케이션이 프로덕션에 배포되는 시간 사이에 개발 및 프로덕션 데이터베이스가 동기화되지 않습니다. 배포 프로세스 중에 이 비동기를 수정해야 합니다. 이러한 과제는 향후 자습서에서 검토될 예정입니다.

웹 호스트 공급자 찾기

ASP.NET 애플리케이션은 .NET Framework 및 IIS(인터넷 정보 서비스)가 설치된 모든 웹 서버에 배포할 수 있습니다. 인터넷에 광대역 연결이 있고 들어오는 웹 요청을 허용하도록 라우터를 구성하는 방법을 알고 있다고 가정하면 개인 컴퓨터에서 사이트를 호스트할 수 있습니다. 많은 회사처럼 인트라넷의 컴퓨터에서 사이트를 호스트할 수도 있습니다. 그러나 이러한 자습서의 초점은 웹 호스트 공급자를 사용하여 웹 사이트를 호스팅하는 것입니다.

참고

IIS 는 Microsoft의 엔터프라이즈급 웹 서버입니다. Windows Server 2008 및 특정 버전의 Windows Vista와 같은 비 Home 버전의 Windows와 함께 제공됩니다. Visual Studio에 ASP.NET 개발 웹 서버가 포함되어 있으므로 개발 환경에서 ASP.NET 애플리케이션을 제공하기 위해 IIS를 설치할 필요가 없습니다. 그러나 ASP.NET 개발 웹 서버는 로컬 연결만 허용하므로 프로덕션 환경에서 사용할 수 없습니다.

웹 호스트 공급자에 사이트를 배포하려면 먼저 비즈니스를 수행할 회사를 결정해야 합니다. 마켓플레이스에는 수많은 웹 호스팅 회사가 있습니다. "웹 호스팅 회사"를 검색하면 500만 개 이상의 결과가 반환됩니다. 적합한 항목을 찾으려면 어떻게 해야 하나요? 다양한 호스팅 서비스를 비교하고 대조하는 TopHostsHostCritique와 같은 웹 사이트와 마찬가지로 즐겨 찾는 검색 엔진이 좋은 시작점입니다. 또한 동료와 동료에게 권장 사항을 요청하는 것이 좋습니다. ASP.NET 포럼의 호스팅 오픈 포럼 에서 권장 사항을 요청할 수도 있습니다.

웹 호스팅 회사는 일반적으로 공유 호스팅 계획 및 전용 호스팅 계획을 제공합니다. 공유 호스팅을 통해 단일 웹 서버는 수백 개의 다른 웹 사이트를 호스트하지 않을 경우 수십 개의 웹 사이트를 호스트합니다. 전용 호스팅을 사용하면 사이트와 사이트를 단독으로 제공하는 회사의 컴퓨터를 임대할 수 있습니다. 공유 호스팅 계획에는 ASP.NET 페이지 지원, Microsoft Access 데이터베이스 작업 기능, 5GB의 디스크 공간 및 매월 $9.95의 월간 대역폭 트래픽 100GB가 포함될 수 있습니다. 또 다른 공유 호스팅 계획에는 ASP.NET 페이지 지원, Microsoft SQL Server 2008 데이터베이스 서버에 대한 액세스, 10GB의 디스크 공간 및 매월 $19.95의 월간 대역폭 트래픽 250GB가 포함될 수 있습니다. 전용 호스팅 계획은 일반적으로 훨씬 더 비싸며 매월 수백 달러의 비용이 들지만 공유 호스팅 옵션보다 더 나은 성능과 더 많은 제어를 제공합니다. 선택하는 계획은 예산, 웹 사이트에서 수신하는 트래픽 양 및 필요한 기능에 따라 달라집니다.

웹 호스트 공급자를 선택할 때 두 가지 중요한 고려 사항은 고객 서비스 및 서비스 품질입니다. 질문 또는 구성 문제가 있는 경우 응답을 받을 때까지 웹 호스트의 기술 지원팀에 문제를 제출하는 데 얼마나 걸리나요? 회사의 서비스는 얼마나 신뢰할 수 있습니까? 데이터베이스 중단이 자주 있나요? 전자 메일 서버가 오프라인으로 전환되는 빈도는 얼마나 됩니까? 항상 회사에 가동 시간에 대한 세부 정보를 제공하고 고객 서비스 정책에 대해 문의하도록 요청할 수 있지만, 더 확실한 방법은 온라인 포럼, 뉴스 그룹 및 이메일 listservs를 통해 수행할 수 있는 현재 및 과거 고객의 피드백을 요청하는 것입니다.

참고

일부 웹 호스팅 회사는 .NET 또는 LAMP (L inux, A pache, M ySQL 및 P HP)와 같은 특정 기술 스택에 비즈니스를 집중하므로 선택한 회사가 ASP.NET 애플리케이션을 호스트해야 합니다. 또한 검사 애플리케이션을 빌드하는 데 사용하는 ASP.NET 버전을 지원하는지 확인합니다. 데이터 기반 애플리케이션을 빌드하는 경우 웹 호스트가 사용 중인 것과 동일한 데이터베이스 서버 및 버전을 제공하는지 확인합니다.

요약

ASP.NET 웹 애플리케이션은 일반적으로 로컬 개발 환경에서 설계, 생성 및 테스트됩니다. 버전을 릴리스할 준비가 되면 프로덕션 환경으로 이동됩니다. 개인용 컴퓨터 또는 회사 내 서버에서 ASP.NET 웹 사이트를 호스트할 수 있지만 많은 비즈니스 및 개인이 호스팅을 웹 호스트 공급자에게 아웃소싱하도록 선택합니다.

이 자습서 시리즈에서는 웹 호스트 공급자에 ASP.NET 애플리케이션을 배포하는 단계를 살펴보고 일반적인 문제를 살펴봅니다. 이 자습서에서는 ASP.NET 배포 프로세스에 대한 개략적인 개요를 제공하고 적합한 웹 호스트 공급자를 찾기 위한 팁을 제공했습니다. 다음 자습서에서는 웹 사이트를 배포할 때 프로덕션 환경에 복사해야 하는 ASP.NET 관련 파일을 확인합니다.

행복한 프로그래밍!

특별한 감사...

이 자습서 시리즈는 많은 유용한 검토자가 검토했습니다. 이 자습서의 수석 검토자는 테레사 머피였습니다. 예정된 MSDN 문서를 검토하는 데 관심이 있으신가요? 그렇다면 에 줄을 놓습니다 mitchell@4GuysFromRolla.com.