Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Observação
Esta não é a versão mais recente deste artigo. Para a versão atual, consulte a versão .NET 9 deste artigo.
Aviso
Esta versão do ASP.NET Core não tem mais suporte. Para obter mais informações, consulte a Política de Suporte do .NET e do .NET Core. Para a versão atual, consulte a versão .NET 9 deste artigo.
Importante
Essas informações relacionam-se ao produto de pré-lançamento, que poderá ser substancialmente modificado antes do lançamento comercial. A Microsoft não oferece nenhuma garantia, explícita ou implícita, quanto às informações fornecidas aqui.
Para a versão atual, consulte a versão .NET 9 deste artigo.
Este artigo explica como hospedar e implantar aplicativos Blazor.
Publicar o aplicativo
Os aplicativos são publicados para implantação na configuração de versão.
- Selecione o comando Publicar {APPLICATION} no menu Compilar, em que o espaço reservado
{APPLICATION}
é o nome do aplicativo. - Selecione o botão destino de publicação. Para publicar localmente, selecione Pasta.
- Aceite o local padrão no campo Escolher uma pasta ou especifique um local diferente. Selecione o botão
Publish
.
Publicar o aplicativo dispara uma restauração das dependências do projeto e compila o projeto antes de criar os ativos para implantação. Como parte do processo de build, os assemblies e métodos não usados são removidos para reduzir o tamanho de download do aplicativo e os tempos de carregamento.
Locais de publicação padrão
-
Blazor Web App: O aplicativo é publicado na pasta
/bin/Release/{TARGET FRAMEWORK}/publish
, em que o{TARGET FRAMEWORK}
espaço reservado é a estrutura de destino. Implante o conteúdo da pastapublish
no host. - AutônomoBlazor WebAssembly: o aplicativo é publicado na pasta
bin/Release/{TARGET FRAMEWORK}/publish
ou na pastabin/Release/{TARGET FRAMEWORK}/browser-wasm/publish
. Para implantar o aplicativo como um site estático, copie o conteúdo da pastawwwroot
para o host do site estático.
-
Blazor Server: o aplicativo é publicado na pasta
/bin/Release/{TARGET FRAMEWORK}/publish
, em que o{TARGET FRAMEWORK}
espaço reservado é a estrutura de destino. Implante o conteúdo da pastapublish
no host. - Blazor WebAssembly
- Autônomo: o aplicativo é publicado na pasta
/bin/Release/{TARGET FRAMEWORK}/publish
oubin/Release/{TARGET FRAMEWORK}/browser-wasm/publish
. Para implantar o aplicativo como um site estático, copie o conteúdo da pastawwwroot
para o host do site estático. - Hospedado: o aplicativo do servidor ASP.NET Core e o aplicativo cliente Blazor WebAssembly são publicados na pasta
/bin/Release/{TARGET FRAMEWORK}/publish
do aplicativo do servidor, juntamente com quaisquer ativos web estáticos do aplicativo cliente. Implante o conteúdo da pastapublish
no host.
- Autônomo: o aplicativo é publicado na pasta
IIS
Para hospedar um aplicativo Blazor no IIS, consulte os seguintes recursos:
- Hospedagem do IIS
- Hospede e implante aplicativos ASP.NET Core no lado Blazor do servidor: Blazor Web Apps (.NET 8 ou posterior) e Blazor Server aplicativos (.NET 7 ou anteriores) em execução no IIS, incluindo o IIS com VMs (Máquinas Virtuais) do Azure executando o sistema operacional Windows e o Serviço de Aplicativos do Azure.
- Hospedar e implantar ASP.NET Core Blazor WebAssembly com IIS: aplicativos autônomos Blazor WebAssembly (todas as versões do .NET) e aplicativos hospedados Blazor WebAssembly (.NET 7 ou anterior).
- Hospedagem de subaplicação do IIS
- Siga as diretrizes do caminho base do aplicativo antes de publicar o aplicativo. Os exemplos usam um caminho base do aplicativo de
/CoolApp
e mostram como obter o caminho base das configurações do aplicativo ou de outros provedores de configuração. - Siga as diretrizes de configuração de subaplicação em Configuração avançada. O caminho da pasta do subaplicativo no site raiz torna-se o caminho virtual do subaplicativo. Para um caminho base de aplicativo
/CoolApp
, o aplicativo Blazor é colocado em uma pasta chamadaCoolApp
no site raiz e o subaplicativo assume um caminho virtual de/CoolApp
.
- Siga as diretrizes do caminho base do aplicativo antes de publicar o aplicativo. Os exemplos usam um caminho base do aplicativo de
Não há suporte para o compartilhamento de um pool de aplicativos entre aplicativos ASP.NET Core, inclusive para aplicativos Blazor. Use um pool de aplicativos por aplicativo ao hospedar com o IIS e evite o uso dos diretórios virtuais do IIS para hospedar vários aplicativos.
Um ou mais aplicativos Blazor WebAssembly hospedados por um aplicativo ASP.NET Core, conhecido como uma solução Blazor WebAssembly hospedada, têm suporte para um pool de aplicativos. No entanto, não recomendamos nem damos suporte à atribuição de um só pool de aplicativos a várias soluções Blazor WebAssembly hospedadas ou em cenários de hospedagem de subaplicativos.
Para obter mais informações sobre as soluções, consulte Ferramentas para ASP.NET Core Blazor.
Configuração de Blazor ServerMapFallbackToPage
Esta seção só se aplica a aplicativos Blazor Server. MapFallbackToPage não é compatível em Blazor Web Apps e aplicativos do Blazor WebAssembly.
Em cenários em que um aplicativo requer uma área separada com recursos personalizados e componentes Razor:
Crie uma pasta dentro da pasta
Pages
do aplicativo para manter os recursos. Por exemplo, uma seção de administrador de um aplicativo é criada em uma nova pasta chamadaAdmin
(Pages/Admin
).Crie uma página raiz (
_Host.cshtml
) para a área. Por exemplo, crie um arquivoPages/Admin/_Host.cshtml
na página raiz principal do aplicativo (Pages/_Host.cshtml
). Não forneça uma diretiva@page
na página_Host
do Administrador.Adicione um layout à pasta da área (por exemplo,
Pages/Admin/_Layout.razor
). No layout da área separada, defina a marca<base>
href
para corresponder à pasta da área (por exemplo,<base href="/Admin/" />
). Para fins de demonstração, adicione~/
aos recursos estáticos na página. Por exemplo:~/css/bootstrap/bootstrap.min.css
~/css/site.css
-
~/BlazorSample.styles.css
(o namespace do aplicativo de exemplo éBlazorSample
) -
~/_framework/blazor.server.js
(script Blazor)
Se a área deve ter a própria pasta de ativo estático, adicione a pasta e especifique seu local para o Middleware de Arquivo Estático em
Program.cs
(por exemplo,app.UseStaticFiles("/Admin/wwwroot")
).Componentes Razor são adicionados à pasta da área. No mínimo, adicione um componente
Index
à pasta da área com a diretiva@page
correta para a área. Por exemplo, adicione um arquivoPages/Admin/Index.razor
com base no arquivoPages/Index.razor
padrão do aplicativo. Indique a área do Administrador como o modelo de rota na parte superior do arquivo (@page "/admin"
). Adicione componentes adicionais conforme necessário. Por exemplo,Pages/Admin/Component1.razor
com uma diretiva@page
e um modelo de rota de@page "/admin/component1
.Em
Program.cs
, chame MapFallbackToPage para o caminho de solicitação da área imediatamente antes do caminho da página raiz de fallback para a página_Host
:... app.UseRouting(); app.MapBlazorHub(); app.MapFallbackToPage("~/Admin/{*clientroutes:nonfile}", "/Admin/_Host"); app.MapFallbackToPage("/_Host"); app.Run();