Partilhar via


Publicar um aplicativo ASP.NET Core no IIS

Este tutorial mostra como hospedar um aplicativo ASP.NET Core em um servidor IIS.

Este tutorial aborda os seguintes assuntos:

  • Instale o .NET Core Hosting Bundle no Windows Server.
  • Crie um site do IIS no Gerenciador do IIS.
  • Implante um aplicativo ASP.NET Core.

Pré-requisitos

  • SDK do .NET Core instalado na máquina de desenvolvimento.
  • Windows Server configurado com a função de servidor Servidor Web (IIS). Se o servidor não estiver configurado para hospedar sites com o IIS, siga as orientações na seção de configuração do IIS do artigo Host ASP.NET Core no Windows com IIS e retorne a este tutorial.

Advertência

A configuração do IIS e a segurança do site envolvem conceitos que não são abordados neste tutorial. Consulte as orientações do IIS no de documentação do Microsoft IIS e o artigo ASP.NET Core sobre hospedagem com o IIS antes de hospedar aplicativos de produção no IIS.

Cenários importantes para hospedagem do IIS não cobertos por este tutorial incluem:

Instale o .NET Core Hosting Bundle

Instale o .NET Core Hosting Bundle no servidor IIS. O pacote instala o .NET Core Runtime, o .NET Core Library e o ASP.NET Core Module. O módulo permite que os aplicativos ASP.NET Core sejam executados atrás do IIS.

Faça o download do instalador usando o seguinte link:

instalador atual do .NET Core Hosting Bundle (download direto)

  1. Execute o instalador no servidor IIS.

  2. Reinicie o servidor ou execute net stop was /y seguido por net start w3svc em um shell de comando.

Criar o site do IIS

  1. No servidor IIS, crie uma pasta para conter as pastas e os arquivos publicados do aplicativo. Em uma etapa a seguir, o caminho da pasta é fornecido ao IIS como o caminho físico para o aplicativo. Para obter mais informações sobre a pasta de implantação e o layout de arquivo de um aplicativo, consulte ASP.NET Estrutura de diretório principal.

  2. No Gestor do IIS, abra o nó do servidor no painel Conexões. Clique com o botão direito do rato na pasta Sites. Selecione Adicionar sítio web no menu contextual.

  3. Forneça um Nome do site e defina o caminho Físico para a pasta de implantação do aplicativo que você criou. Forneça a configuração de Binding e proceda à criação do site ao selecionar OK.

    Advertência

    As ligações curinga de nível superior (http://*:80/ e http://+:80) não devem ser usadas. As associações wildcard de nível superior podem abrir o seu aplicativo para vulnerabilidades de segurança. Isso se aplica a curingas fortes e fracos. Utilize nomes de host explícitos em vez de caracteres curinga. A vinculação de curinga de subdomínio (por exemplo, *.mysub.com) não apresenta este risco de segurança quando se controla todo o domínio pai (ao contrário de *.com, que é vulnerável). Consulte RFC 9110: Semântica HTTP (Seção 7.2. Host e :authority) para obter mais informações.

  4. Confirme se a identidade do modelo de processo tem as permissões adequadas.

    Se a identidade padrão do pool de aplicativos (Process Model>Identity) for alterada de ApplicationPoolIdentity para outra identidade, verifique se a nova identidade tem as permissões necessárias para acessar a pasta, o banco de dados e outros recursos necessários do aplicativo. Por exemplo, o pool de aplicativos requer acesso de leitura e gravação a pastas onde o aplicativo lê e grava arquivos.

Criar um aplicativo ASP.NET Core Razor Pages

Siga o tutorial Introdução ao ASP.NET Core para criar um aplicativo Razor Pages.

Publicar e implantar o aplicativo

Publicar um aplicativo significa produzir um aplicativo compilado que pode ser hospedado por um servidor. Implantar um aplicativo significa mover o aplicativo publicado para um sistema de hospedagem. A etapa de publicação é gerida pelo SDK do .NET Core , enquanto a etapa de implantação pode ser gerida de várias formas. Este tutorial adota a abordagem de implantação da pasta , onde:

  • O aplicativo é publicado em uma pasta.
  • O conteúdo da pasta é movido para a pasta do site do IIS (o caminho físico para o site no Gerenciador do IIS).
  1. Clique com o botão direito do mouse no projeto em Gerenciador de Soluções e selecione Publicar.
  2. Na caixa de diálogo Escolher um destino de publicação, selecione a opção de publicação Pasta.
  3. Defina o caminho da Pasta ou do Compartilhamento de Arquivos.
    • Se você criou uma pasta para o site do IIS que está disponível na máquina de desenvolvimento como um compartilhamento de rede, forneça o caminho para o compartilhamento. O utilizador atual deve ter acesso de escrita para publicar na partilha.
    • Se você não conseguir implantar diretamente na pasta do site do IIS no servidor IIS, publique em uma pasta em mídia removível e mova fisicamente o aplicativo publicado para a pasta do site do IIS no servidor, que é o caminho físico do site no Gerenciador do IIS. Mova o conteúdo da pasta bin/Release/{TARGET FRAMEWORK}/publish para a pasta do site do IIS no servidor, que corresponde ao "Caminho Físico" do site no Gerenciador do IIS.
  4. Selecione o botão Publicar.

Navegar no site

O aplicativo fica acessível em um navegador depois de receber a primeira solicitação. Faça uma solicitação para o aplicativo na associação de ponto de extremidade que você estabeleceu no Gerenciador do IIS para o site.

Próximos passos

Neste tutorial, você aprendeu como:

  • Instale o .NET Core Hosting Bundle no Windows Server.
  • Crie um site do IIS no Gerenciador do IIS.
  • Implante um aplicativo ASP.NET Core.

Para saber mais sobre como hospedar aplicativos ASP.NET Core no IIS, consulte o artigo Visão geral do IIS:

Recursos adicionais

Artigos no conjunto de documentação ASP.NET Core

Artigos referentes à implantação do aplicativo ASP.NET Core

Artigos sobre a configuração HTTPS do IIS

Artigos sobre IIS e Windows Server

Recursos de implantação para administradores do IIS