Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 42810|Ответ: 1

[.NET Core] Сайт .NET Core запускает конфигурацию доменного имени и порта

[Скопировать ссылку]
Опубликовано 24.05.2017 13:30:59 | | | |
Два дня назад я перепечатал анализ запуска .NET core, потому что при выпуске я был запутан в стандартном порте 5000, поэтому внимательно изучил его.

1. Интеграция IIS

Если вы используете IIS как хост, то это не проблема, мощный IIS поможет нам настроить доменное имя, порт и т.д. сайта. Что касается того, как развернуть asp.net core веб-приложение на IIS, это не суть здесь. Грубо опишите это:

Вам нужно скачать SDK Net Core и хостинг серверов, и адрес для загрузки — https://www.microsoft.com/net/download



После установки проверьте, успешно ли установлен .NET Core SDK в командной строке в dotnet

Ниже показано, успешно ли установлен серверный хост в IIS модуле и отображение обработчиков



Затем настройте сайт и укажите файлы для сайта публикации

Наконец, пул программ должен быть настроен и выбран неуправляемым, чтобы появился запрос на переадресацию хоста сервера.





2. Среда Linux

Не говоря уже о конкретной установке, их тоже много. Согласно инструкции на официальном сайте, то есть установите среду запуска .NET Core, и она может работать.

Вот рекомендуемый блог-пост для вашей личной справки: Развертывание ASP.NET основных приложений в продакшн (CentOS7)



Возвращаясь к главному вопросу: как настроить параметры URL и порта

1. Указать в основном методе программирования




Этот подход негибкий и не слишком элегантн, даже если его читать с добавлением конфигурационного файла. В то время я почувствовал, что Microsoft определённо не порекомендовала бы такое применение, поэтому продолжил искать его.

2. Передайте переменную среды

Я видел статью в интернете «Как настроить URL Kestrel в ASP.NET Core RC2»,

Хотя он всё ещё настроен через конфигурационный файл, ему не нужно читать конфигурационную информацию в другие статьи, и его можно использовать напрямую, привязывая или вставляя код, чтобы увидеть:

hosting.json


Program.cs



Так он также может слушать

Теперь слушайте: http://localhost:60000

Теперь слушайте: http://localhost:60001

Разве это не потрясающе! Я не выношу сам бой, вычтите исходный код! Самое лучшее в .NET Core — это наличие исходного кода!

Исходя из источников, мы можем знать, что это в основном класс WebHostBuilder, в пространстве имён Microsoft.AspNetCore.Hosting.

Основной метод — Build



Основная задача здесь — построить объект WebHost, а затем искать дальше

Рассматривая исходный код с помощью метода Initialize, мы можем узнать URL-адрес, созданный методом EnsureServer




Здесь мы видим, что он читает _config[WebHostDefaults.ServerUrlsKey] и _config[DeprecatedServerUrlsKey] из конфигурации.

Значение WebHostDefaults.ServerUrlsKey является фиксированным значением



Значение DeprecatedServerUrlsKey определяется в начале объекта WebHost



О! Правда раскрывается. Так что мы можем установить "server.urls" в конфигурационном файле.


Резюме:

В итоге, asp.net ядро прочитает конфигурацию в переменной среды при запуске, и на самом деле нужно добавить следующую конфигурацию к свойствам проекта:



Игра была запущена в консольном режиме и обнаружила, что порт был переключен.

Итак, это среда разработки, как её развернуть на производственной линии? Это тоже очень просто: взять в пример развертывание Linux, использовать демон-супервайзер для запуска программы, добавить переменные среды в конфигурацию запуска супервайзера:


Добивайся успеха с отличным успехом! Ни одной строки кода не нужно менять, ха-ха~




Предыдущий:Стартовый супервайзер: Ошибка: другая программа уже прослушивается на порту...
Следующий:Проблемы с адаптацией ширины CSS ПК и мобильного телефона
Опубликовано 06.10.2021 9:49:34 |
Отличная работа. Спасибо владельцу за предоставленную !!
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com