ASP.NET 웹 페이지 소개 - WebMatrix를 사용하여 사이트 게시
이 자습서는 ASP.NET 웹 페이지 및 Microsoft WebMatrix를 소개하는 자습서 집합의 마지막 할부입니다. 다른 사용자가 작업할 수 있도록 사이트를 인터넷에 게시하는 방법에 대해 설명합니다. ASP.NET 웹 페이지 사이트에 대해 일관된 보기 만들기를 통해 시리즈를 완료한 것으로 가정합니다.
다음을 사용하여 사이트를 게시하는 방법을 알아봅니다.
- Microsoft Azure
- 웹 호스팅 회사
사이트 게시 정보
지금까지 페이지 테스트를 포함하여 로컬 컴퓨터에서 모든 작업을 수행했습니다. your.cshtml 페이지를 실행하기 위해 WebMatrix에 기본 제공되는 웹 서버, 즉 IIS Express 사용했습니다. 그러나 물론 사용자 외에는 만든 사이트를 아무도 볼 수 없습니다. 다른 사용자가 사이트를 사용할 수 있도록 하려면 인터넷에 게시해야 합니다.
퍼블릭 웹 서버에 대한 액세스 권한이 없는 한 게시는 클라우드 플랫폼 또는 호스팅 공급자가 있는 계정이 있어야 한다는 것을 의미합니다. Microsoft Azure와 같은 클라우드 플랫폼은 애플리케이션에 대한 주문형 인프라를 제공합니다. 호스팅 공급자는 공개적으로 액세스할 수 있는 웹 서버를 소유하고 사이트의 공간을 임대하는 회사입니다. 호스팅 계획은 소규모 사이트의 경우 한 달에 몇 달러(또는 무료)에서 대용량 상업용 웹 사이트의 경우 한 달에 수백 달러로 실행됩니다.
참고
집에서 인터넷 서비스를 가져오는 데 사용하는 ISP(인터넷 서비스 공급자)를 통해 공용 웹 서버에 액세스할 수 있습니다. 그러나 호스팅 공급자는 ASP.NET 웹 페이지 지원해야 합니다. 많은 ISP는 그렇지 않지만 항상 확인할 가치가 있습니다.
이 자습서에서는 게시 방법에 대한 개요를 제공합니다. 프로세스가 모든 호스팅 공급자에 대해 약간 다르기 때문에 모든 항목에 대한 정확한 세부 정보를 제공하는 것은 실용적이지 않습니다. 하지만 프로세스가 어떻게 작동하는지 잘 알 수 있습니다.
이 자습서에는 다음 네 개의 섹션이 포함되어 있습니다.
- 기본 페이지 설정
- 게시(다음 중 하나를 선택)
a. Microsoft Azure에 사이트 게시
b. 웹 호스팅 회사에 사이트 게시 - 라이브 사이트 업데이트: 다시 게시
기본 페이지 설정
사용자가 웹 사이트의 기본 주소로 이동하면 사이트의 기본 페이지가 사용자에게 표시됩니다. 예를 들어 Default.htm 에서 www.contoso.com
사이트의 기본 페이지로 설정된 경우 로 이동 www.contoso.com
하면 로 탐색하는 www.contoso.com/Default.htm
것과 같습니다.
현재 사이트에서 Default.cshtml을 기본 페이지로 사용합니다. 이 페이지는 기본 페이지에 적합하지만 이 자습서에서는 빈 페이지가 표시되도록 해당 페이지에 콘텐츠를 추가하지 않았습니다. Default.cshtml을 열고 콘텐츠를 다음 코드로 바꿉니다.
@{
Layout = "~/_Layout.cshtml";
Page.Title = "Welcome to Movie site";
}
<p><a href="~/Movies">Go to movie listing</a></p>
이제 사이트를 게시할 준비가 되었습니다. 먼저 Azure에 사이트를 배포한 다음 웹 호스팅 회사에 배포하는 방법을 확인할 수 있습니다. 두 옵션 중 하나가 웹 사이트에 대해 작동하며 배포 옵션 중 하나만 따라야 합니다.
Microsoft Azure에 사이트 게시
이 자습서에서는 먼저 Microsoft Azure에 사이트를 배포하는 방법을 보여줍니다. Microsoft 계정으로 로그인하면 Azure에서 최대 10개의 무료 사이트를 만들 수 있습니다. 이러한 무료 사이트는 사이트를 테스트하는 편리한 방법을 제공합니다. 나중에 이 예제 사이트를 삭제하여 모든 무료 사이트를 사용하지 않도록 할 수 있습니다. 몇 분 만에 무료 평가판 계정을 만들 수 있습니다. 자세한 내용은 Azure 평가판을 참조하세요.
WebMatrix 리본에서 게시 단추를 클릭합니다.
사이트 게시 대화 상자가 표시됩니다. Microsoft 계정에 로그인하지 않은 경우 대화 상자에 Azure 시작 링크가 포함됩니다. 이 링크를 클릭합니다.
Microsoft 계정에 로그인하지 않은 경우 다시 로그인할 수 있는 기회가 제공됩니다. Azure에 사이트를 게시하려면 Microsoft 계정에 로그인해야 합니다.
Microsoft 계정에 로그인한 후 대화 상자에는 Azure에서 새 사이트를 만들거나 Azure의 기존 사이트 중 하나에 연결하는 링크가 포함됩니다.
새 사이트 만들기를 선택합니다.
프로젝트 이름을 WebPagesMovies로 지정하면 사이트의 기본 이름이 webpagesmovies.azurewebsites.net. 이 기본 이름은 빨간색 느낌표로 표시된 대로 사용할 수 없을 가능성이 높습니다.
사이트 이름을 사용 가능한 항목으로 변경하고 위치와 가까운 위치를 선택합니다.
확인을 클릭합니다.
WebMatrix는 테스트를 수행하여 서버가 사이트와 호환되는지 확인합니다.
계속을 선택합니다.
호환성 테스트 결과가 표시됩니다.
계속을 선택합니다.
WebMatrix는 사이트에 게시될 파일 및 데이터베이스를 표시합니다. 사이트를 게시하는 것은 이번이 처음이므로 모든 파일이 나열됩니다. 게시할 준비가 되지 않은 파일의 선택을 취소할 수 있습니다. 이후 게시에서는 변경된 파일만 표시됩니다. 라이브 사이트 업데이트: 다시 게시를 참조하세요.
계속을 선택합니다.
사이트가 Azure에 배포되면 배포가 완료되었음을 나타내는 메시지가 표시됩니다.
사이트 및 데이터베이스가 Azure에 게시되었으며 이제 대중에게 공개됩니다. 게시가 완료되었음을 나타내는 메시지의 링크를 클릭하면 배포된 사이트가 표시됩니다. 사용자 또는 인터넷에 액세스할 수 있는 사용자는 데이터베이스에서 레코드를 추가하거나 수정할 수 있습니다.
웹 호스팅 회사에 사이트 게시
Azure에 게시하지 않기로 결정한 경우 웹 호스팅 회사에 사이트를 게시할 수 있습니다.
웹 호스팅 찾기 링크를 클릭합니다.
ASP.NET 지원하는 호스팅 공급자를 나열하는 Microsoft 사이트의 페이지로 이동합니다.
분명히 장기적으로 필요할 수 있는 호스팅 기능을 정확히 알기 어려울 수 있습니다. 다음은 고려해야 할 몇 가지 사항입니다.
- WebPagesMovies 사이트의 목적을 위해 SQL Server 별도의 추가 기능을 사용할 필요가 없으며, 이는 종종 추가 비용이 듭니다. 사이트에서 자체 포함된 SQL Server Compact Edition을 사용하고 있습니다. 그러나 향후 웹 사이트 작업을 위해 SQL Server 액세스가 필요할 수 있습니다. 가능할 수 있다고 생각되면 나중에 SQL Server 기능을 추가할 수 있는지 확인합니다.
- 호스팅 공급자가 웹 배포 게시 프로토콜을 지원하는지 확인합니다. FTP 프로토콜을 사용하여 게시할 수 있지만 웹 배포를 사용하는 것이 더 편리합니다.
일부 사이트는 평가판 기간을 제공합니다. 무료 평가판은 WebMatrix 및 ASP.NET 웹 페이지 실험하는 동안 게시 및 호스팅을 시도하는 좋은 방법입니다.
원하는 항목을 선택합니다. 이 자습서에서는 자습서를 만드는 동안 사람들이 몇 달 동안 사이트를 무료로 호스트할 수 있는 프로모션이 있었기 때문에 DiscountASP.NET 선택했습니다.
참고
이 자습서의 호스팅 공급자 선택은 다른 어떤 회사보다도 해당 회사의 보증으로 해석되어서는 안 됩니다. 그러나 우리는 설명을 위해 하나를 선택해야했고, DiscountASP.NET 게시를위한 ASP.NET 웹 페이지 및 웹 배포 프로토콜을 지원하는 많은 회사 중 하나입니다.
일반적으로 호스팅 공급자에 등록한 후 회사는 사용자 이름 및 암호, 웹 서버의 URL 등이 포함된 이메일을 보냅니다. 호스팅 회사에서 웹 배포 프로토콜을 지원하는 경우 게시 설정이 포함된 파일을 보내거나 다운로드할 수 있습니다. 게시 설정 파일은 프로세스를 간소화합니다.
등록하고 게시할 준비가 되면 WebMatrix 리본에서 게시 단추를 클릭합니다. 게시 설정 대화 상자가 표시됩니다.
호스팅 공급자가 게시 설정 파일을 보낸 경우 게시 설정 가져오기 링크를 클릭하고 파일을 가져옵니다. 게시 설정 파일이 없는 경우 호스팅 회사에서 전자 메일로 보낸 값을 사용하여 필드를 채웁니다. 완료되면 게시 설정 대화 상자가 다음과 같이 표시됩니다.
연결 유효성 검사를 클릭합니다. 모든 것이 정상이면 대화 상자에서 연결됨을 보고합니다. 즉, 호스팅 공급자의 서버와 통신할 수 있습니다.
문제가 있는 경우 WebMatrix는 문제가 무엇인지 알려주기 위해 최선을 다합니다.
Save 를 클릭하여 설정을 저장합니다. WebMatrix는 호스팅 사이트와 올바르게 통신할 수 있도록 테스트를 수행하도록 제안합니다.
예를 클릭합니다. WebMatrix는 일부 샘플 파일을 호스팅 공급자에 업로드합니다. 호환성 테스트가 완료되면 WebMatrix는 결과를 보고합니다.
진행할 준비가 되면 계속 을 클릭하여 실제 게시 프로세스를 시작합니다. WebMatrix는 사이트에 있는 파일을 파악하고 호스트 서버에 이미 있는 파일(현재는 없음)을 파악하고 게시 프로세스의 미리 보기를 제공합니다.
게시할 파일 목록에는 Movies.cshtml처럼 만든 웹 페이지가 포함됩니다. 또한 목록에는 설치한 도우미용 파일, 데이터베이스용 SQL Server Compact Edition을 실행할 파일 등이 포함됩니다. 따라서 초기 게시 프로세스는 상당할 수 있습니다.
계속을 클릭합니다. WebMatrix는 호스팅 공급자의 서버에 파일을 복사합니다. 완료되면 결과가 상태 표시줄에 보고됩니다.
라이브 사이트를 보려면 상태 표시줄에서 링크를 클릭합니다. URL에 영화를 추가하면 만든 Movies.cshtml 파일이 표시됩니다.
라이브 사이트 업데이트: 다시 게시
사이트를 Azure 또는 웹 호스팅 회사에 게시한 후에는 컴퓨터의 버전과 서비스 공급자의 버전이라는 두 개의 복사본이 있습니다. 사이트를 계속 개발하는 것이 좋습니다(다음 자습서 집합의 일부로 다른 항목이 없는 경우). 이렇게 하면 컴퓨터에서 서비스 공급자로 변경 내용을 복사하려면 사이트를 다시 게시해야 합니다. WebMatrix의 게시 프로세스는 사이트에서 변경된 파일을 확인하고 해당 파일만 게시할 수 있습니다.
다시 게시의 작동 방식을 확인하려면 Movies.cshtml 사이트를 열고 약간 변경한 다음 파일을 저장합니다. 예를 들어 제목을 로 변경합니다 Movies - Updated
.
리본에서 게시 단추를 클릭합니다. WebMatrix는 변경된 내용을 결정하고 게시할 파일의 미리 보기를 표시합니다.
중요
기본적으로 WebMatrix는 사이트를 처음 게시할 때만 데이터베이스(.sdf 파일)를 게시합니다. 사이트가 게시되고 사람들이 웹 사이트와 상호 작용하면 라이브 사이트의 데이터베이스에는 일반적으로 사이트의 실제 데이터가 있습니다. 일반적으로 테스트 데이터만 포함하는 컴퓨터에 있는 .sdf 파일로 라이브 데이터베이스를 덮어쓰지 않도록 주의해야 합니다. 따라서 게시가 원격 데이터베이스를 덮어쓰는 경고가 표시되고 WebPagesMovies.sdf에 대한 검사 상자가 기본적으로 선택 취소되는 이유가 표시됩니다.
계속을 클릭합니다. WebMatrix는 변경된 파일을 게시하고 처음 게시했을 때와 마찬가지로 성공 메시지를 표시합니다.
라이브 사이트(여전히 표시되는 경우 성공 메시지에서 링크를 클릭할 수 있음)로 이동하여 변경 내용이 게시되었는지 확인합니다.
팁
원격으로 파일 편집
사이트를 변경한 다음 다시 게시하는 대신 WebMatrix에서 직접 원격 파일을 편집할 수 있습니다. 이 시나리오에서는 서비스 공급자에 있는 파일을 열고 WebMatrix는 편집할 수 있도록 복사본을 다운로드합니다. 파일을 저장할 때마다 WebMatrix는 변경 내용을 사이트로 보냅니다.
원격 편집은 라이브 사이트를 쉽게 변경할 수 있는 방법입니다. 그러나 이러한 방식으로 변경한 내용은 로컬 사이트의 파일과 동기화되지 않습니다. 로컬 파일을 원격 사이트와 동기화하려면 원격 파일을 다운로드할 수 있습니다. 이 프로세스는 역방향을 제외하고 게시와 매우 유사합니다.
여기서는 WebMatrix의 원격 편집 및 원격 다운로드 기능에 대해 자세히 설명하지 않습니다. 여러 사람이 다른 컴퓨터에서 동일한 사이트에서 작업해야 하는 경우 매우 유용합니다. 자세한 내용은 WebMatrix 2 베타를 사용하여 원격 사이트 게시 및 편집을 참조하세요.
추가 리소스
- ASP.NET WebMatrix ASP.NET 웹 페이지 포럼은 질문을 게시하고 답변을 얻을 수있는 좋은 장소입니다.