Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 42810|Resposta: 1

[.NET Core] O site .NET Core inicia a configuração do nome de domínio e da porta

[Copiar link]
Publicado em 24/05/2017 13:30:59 | | | |
Dois dias atrás, reimprimi uma análise de inicialização do .NET core, porque eu estava preso na porta padrão 5000 quando foi lançada, então estudei com atenção.

1. Integração com IIS

Se você usa IIS como host, então isso não é um problema, um IIS poderoso pode nos ajudar a configurar o nome de domínio, porta, etc. do site. Quanto a como implantar uma aplicação web asp.net core no IIS, esse não é o ponto aqui. Descreva de forma aproximada:

Você precisa baixar o SDK do Net Core e a hospedagem do servidor, e o endereço de download é https://www.microsoft.com/net/download



Após a instalação, verifique se o SDK do .NET Core está instalado com sucesso nas informações do ponto de linha de comando

Se o host do servidor está instalado com sucesso no módulo IIS e no mapeamento do handler está mostrado abaixo



Depois, configure o site e especifique os arquivos para o site de publicação

Por fim, o pool de programas deve ser configurado e escolher não gerenciado, para que haja uma requisição de encaminhamento do host do servidor.





2. Ambiente Linux

Sem falar na instalação específica, também há muitos. De acordo com as instruções no site oficial, ou seja, instale o ambiente de execução do .NET Core e ele pode rodar.

Aqui está um post recomendado para sua própria referência: Implantando ASP.NET aplicações Core para produção (CentOS7)



Voltando ao ponto principal, como configurar parâmetros de URL e porta

1. Especificar no método principal do programa




Essa abordagem é inflexível e não tão elegante, mesmo que seja lida adicionando um arquivo de configuração. Naquela época, senti que a Microsoft definitivamente não recomendaria esse tipo de uso, então continuei procurando por isso.

2. Passar a variável ambiente

Vi um artigo na Internet sobre como configurar URLs de Kestrel no ASP.NET Core RC2,

Embora ainda esteja configurado pelo arquivo de configuração, não precisa ler as informações de configuração para outros artigos, e pode ser usado diretamente vinculando ou colando o código para ver:

hosting.json


Program.cs



Dessa forma, ele também pode ouvir

Agora ouvindo: http://localhost:60000

Agora ouvindo: http://localhost:60001

Não é incrível! Não suporto o combate em si, deduza o código-fonte! De longe, a melhor coisa do .NET Core é que ele tem código-fonte!

Pela fonte, podemos saber que é principalmente a classe WebHostBuilder, sob o namespace Microsoft.AspNetCore.Hosting.

O método principal é Build



O foco principal aqui é construir um objeto WebHost e depois olhar mais além

Ao analisar o código-fonte pelo método Initialize, podemos saber o endereço URL criado pelo método EnsureServer




Aqui podemos ver que ele lê _config[WebHostDefaults.ServerUrlsKey] e _config[DeprecatedServerUrlsKey] da configuração.

O valor de WebHostDefaults.ServerUrlsKey é um valor fixo



O valor de DeprecatedServerUrlsKey é definido no início do objeto WebHost



Oh! A verdade é revelada. Então podemos definir "server.urls" no arquivo de configuração.


Resumo:

Resumindo, asp.net núcleo vai ler a configuração na variável ambiente quando ela inicia, e o objetivo real é adicionar a seguinte configuração às propriedades do projeto:



Ele foi iniciado no modo console e descobriu que a versão foi alterada.

Então, este é um ambiente de desenvolvimento, como implantá-lo na linha de produção? Isso também é muito simples, tomando a implantação do Linux como exemplo, usando o supervisor do daemon para iniciar o programa, adicionar variáveis de ambiente à configuração de inicialização do supervisor:


Tenha sucesso com louvor! Nem uma linha de código precisa ser alterada, haha~




Anterior:Supervisor inicial: Erro: Outro programa já está ouvindo em um porto th...
Próximo:Problemas de adaptação da largura do CSS para PC e celular
Publicado em 06/10/2021 09:49:34 |
Coisa boa. Obrigado ao proprietário por fornecer !!
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com