Carregando Post...

Implantando um aplicativo Blazor no IIS

Introdução

Neste artigo, entenderemos como implantar um aplicativo Blazor hospedado pelo ASP.NET Core com a ajuda do IIS 10 em uma máquina com Windows 10. Estaremos usando o Visual Studio 2017 para publicar o aplicativo e o SQL Server 2014 para lidar com operações de banco de dados. Também vamos solucionar alguns dos problemas comuns de hospedagem de um aplicativo Blazor.

Pré-requisitos

  • Instale o IIS em sua máquina
  • Instale o módulo de regravação de URL aqui

Por favor, consulte o meu artigo anterior Cascading DropDownList no Blazor Usando o EF Corepara criar o aplicativo que será implantado neste tutorial.

Instalando o pacote de hospedagem do .NET Core

Como vamos implantar um aplicativo Blazor hospedado pelo ASP.NET Core, a primeira etapa é instalar o pacote de hospedagem .NET Core em nossa máquina.

Siga as etapas abaixo para baixar o pacote de hospedagem .NET Core:

  • Abra https://www.microsoft.com/net/download/all
  • Selecione o tempo de execução mais recente do .NET Core que não está disponível na lista. Para este tutorial, vamos selecionar o .NET Core Runtime 2.0.7. Veja a imagem abaixo:

 

  • Na página de download do tempo de execução do .NET Core, role para baixo até a seção do Windows, selecione o link “Hosting Bundle Installer” para fazer o download do  .NET Core Hosting Bundle .

 

Quando o download estiver concluído, clique duas vezes para começar a instalá-lo. Você pode ver uma janela semelhante à mostrada abaixo:

Nota importante

  1. O pacote de hospedagem do .NET Core deve ser instalado após a instalação do IIS apenas. Se você instalar o pacote de hospedagem principal do .NET antes de instalar o IIS, precisará repará-lo depois de instalar o IIS para que ele atualize suas dependências para o IIS.
  2. Reinicie a máquina depois de instalar o pacote de hospedagem .NET Core.

Publicando o aplicativo Blazor

Depois que a instalação do pacote de hospedagem .NET Core for bem-sucedida e você tiver reiniciado sua máquina, abra a solução de aplicativo Blazor usando o VS 2017.

Clique com o botão direito do mouse em Projeto de servidor da sua solução e clique em publicar. Neste caso, será BlazorDDL.Server >> Publicar

Você verá uma tela semelhante a abaixo. Selecione Pasta no menu à esquerda e forneça um caminho de pasta. Você pode fornecer qualquer caminho de pasta onde deseja publicar seu aplicativo.

Clique em publicar. O Visual Studio começará a publicar seu aplicativo. Se não houver erros de compilação, o seu aplicativo será publicado com sucesso na pasta que você mencionou.

Depois que a publicação for bem-sucedida, prosseguiremos para configurar o IIS.

Configurando o IIS

Abra o IIS e clique com o botão direito do mouse em Sites >> Adicionar Site.

Uma caixa pop-up "Adicionar site" será aberta. Aqui precisamos fornecer detalhes em três campos

  1. Nome do site: Coloque qualquer nome de sua escolha. Aqui eu coloco “ankitsite”
  2. Caminho Físico: O caminho para a pasta onde você publicou seu aplicativo.
  3. Nome do host: este é o nome que colocamos no navegador para acessar nosso aplicativo. Vamos colocar ankitsite.com para esta demonstração.

Clique em OK para criar o site. Veja a imagem abaixo:

O próximo passo é configurar o “pool de aplicativos” para o nosso site. O nome do pool de aplicativos será o mesmo que o "Nome do site" que fornecemos na última etapa. Portanto, nesse caso, o nome do pool de aplicativos será “ankitsite”. Clique em “Application Pools” no painel esquerdo e clique duas vezes no pool “ankitsite”. Ele abrirá uma janela "editar pool de aplicativos". Selecione "Nenhum código gerenciado" na lista suspensa da versão do .NET CLR. Veja a imagem abaixo:

 

Aqui está todo o processo de configuração do IIS explicado em uma imagem gif.

Configurando o host DNS

O último passo é configurar o nosso arquivo host DNS.

Navegue até o caminho C: Windows System32 drivers etc em sua máquina e abra o arquivo “hosts” usando qualquer editor de texto.

Precisamos adicionar o nome do host que fornecemos no IIS em relação ao endereço IP do host local. Veja a imagem abaixo:

Por isso, hospedamos com sucesso um aplicativo Blazor no IIS.

Demonstração de Execução

Abra qualquer navegador na sua máquina e digite o nome do host que você configurou. Você pode ver que o aplicativo será aberto na janela do navegador.

Solução de problemas comuns de hospedagem

Nesta seção, vamos examinar alguns dos problemas comuns que você pode enfrentar ao hospedar um aplicativo Blazor.

  1. Se você não conseguir abrir o site e receber um erro de DNS não encontrado

Verifique se o nome do host está configurado corretamente no arquivo do host. Certifique-se de que sua máquina não esteja conectada a nenhum servidor VPN. Além disso, se você estiver usando qualquer proxy da Web, desative-o.

  1. Erro HTTP 500.19 - Erro interno do servidor - A página solicitada não pode ser acessada porque os dados de configuração relacionados para a página são inválidos.

Esta mensagem de erro é clara. A pasta de publicação está inacessível devido a permissões insuficientes. Conceder permissão de leitura ao grupo IIS_IUSRS na pasta de publicação para que possa acessar o arquivo Web.config.

  1. Se o site estiver sendo carregado, mas os dados não estiverem sendo preenchidos e você receber um erro interno de 500 servidores

Certifique-se de que sua seqüência de conexão esteja no formato correto. O ID do usuário que você especificou na sua string de conexão deve ter as permissões db_datareader e db_datawriter. Se o problema persistir, forneça ao usuário a permissão db_owner.

  1. Se os dados não estiverem sendo preenchidos e você receber uma exceção "operação não permitida"

Esse problema geralmente aparece quando você tenta fazer uma operação PUT, POST ou DELETE na sua API da web. Para atenuar esse problema, precisamos alterar a configuração do IIS.

Navegue para o Painel de Controle >> Ativar ou desativar o recurso do Windows. Em seguida, navegue até Serviços de Informações da Internet >> Serviços da World Wide Web >> Recursos HTTP comuns, desmarque a opção “Publicação WebDAV” e clique em OK. Veja a imagem abaixo:

 

  1. “Falha ao carregar <web API>: nenhum cabeçalho 'Access-Control-Allow-Origin' está presente no recurso solicitado.

A causa desse erro é que o cliente e o servidor do aplicativo não estão na mesma porta. O navegador restringirá o aplicativo a fazer chamadas da API da web devido à política de mesma origem.

Para resolver esse problema, você precisa habilitar solicitações de origem cruzada (CORS) em seu aplicativo. Consulte os documentos da Microsoft sobre como ativar solicitações de origem cruzada (CORS) no ASP.NET Core .

  1. Se você republicar o aplicativo, não se esqueça de atualizar seu site, bem como o pool de aplicativos no IIS.

Conclusão

Neste artigo, aprendemos a implantar um aplicativo Blazor no IIS no Windows. Também aprendemos a resolver alguns dos problemas comuns de hospedagem durante a implantação de um aplicativo Blazor.

Comentários

Deixe um Comentário

Posts Recentes

24/Outubro/2018

Jogos

19/Setembro/2018

CRUD com ASP.NET Core MVC...

18/Setembro/2018

Autenticação usando o...


Onde estamos ? clique no mapaFechar Mapa

Entre em Contato

Escreva para nós, vamos trocar algumas ideias!

Telefone

(24) 9219-6805

24992196805

Email

heitorhog@outlook.com

Localização

Rua Professor João de Deus, 908,Quarteirão Brasileiro Petrópolis RJ