Pirms divām dienām es atkārtoti izdrukāju .NET kodola starta analīzi, jo es biju iekļuvis noklusējuma 5000 portā, kad tas tika izlaists, tāpēc es to rūpīgi izpētīju.
1. IIS integrācija
Ja izmantojat IIS kā resursdatoru, tad tās nav problēma, jaudīgs IIS var palīdzēt mums konfigurēt vietnes domēna nosaukumu, portu utt. Kas attiecas uz to, kā izvietot asp.net pamata tīmekļa lietojumprogrammu IIS, tas šeit nav jēga. Aptuveni aprakstiet to:
Jums ir nepieciešams lejupielādēt Net Core SDK un servera hostingu, un lejupielādes adrese ir https://www.microsoft.com/net/download
Pēc instalēšanas pārbaudiet, vai .NET Core SDK ir veiksmīgi instalēts komandrindā dotnet info
Tālāk ir parādīts, vai servera resursdators ir veiksmīgi instalēts IIS modulī un apdarinātāja kartēšana
Pēc tam iestatiet vietni un norādiet failus publicēšanas vietnei
Visbeidzot, programmu pūls ir jākonfigurē un jāizvēlas nepārvaldīts, lai būtu servera resursdatora pārsūtīšanas pieprasījums.
2. Linux vide
Nemaz nerunājot par konkrēto instalāciju, to ir arī daudz. Saskaņā ar norādījumiem oficiālajā vietnē, tas ir, instalējiet .NET Core darbības vidi, un tā var darboties.
Šeit ir ieteicamais emuāra ieraksts jūsu atsaucei: ASP.NET Core lietojumprogrammu izvietošana ražošanā (CentOS7)
Atpakaļ pie galvenā punkta, kā konfigurēt URL un portu parametrus
1. Norādiet programmas galveno metodi
Šī pieeja ir neelastīga un ne tik eleganta, pat ja tā tiek lasīta, pievienojot konfigurācijas failu. Šajā laikā es jutu, ka Microsoft noteikti neieteiks šādu izmantošanu, tāpēc es turpināju to meklēt.
2. Nododiet vides mainīgo
Es redzēju rakstu internetā Kā konfigurēt Kestrel URL ASP.NET Core RC2,
Lai gan tas joprojām ir konfigurēts, izmantojot konfigurācijas failu, tam nav nepieciešams nolasīt konfigurācijas informāciju citiem rakstiem, un to var izmantot tieši, saistot vai ielīmējot kodu, lai redzētu:
hosting.json
Program.cs
Tādā veidā tas var arī klausīties
Tagad klausāmies: http://localhost:60000
Tagad klausāmies: http://localhost:60001
Vai tas nav pārsteidzoši! Es nevaru izturēt faktisko cīņu, atskaitiet avota kodu! Līdz šim labākais par .NET Core ir tas, ka tam ir avota kods!
Izmantojot avotu, mēs varam zināt, ka tā galvenokārt ir WebHostBuilder klase ar Microsoft.AspNetCore.Hosting nosaukumvietu.
Galvenā metode ir veidot
Šeit galvenā uzmanība tiek pievērsta WebHost objekta izveidei un pēc tam meklēt tālāk
Aplūkojot avota kodu, izmantojot inicializēšanas metodi, mēs varam uzzināt URL adresi, kas izveidota ar EnsureServer metodi
Šeit mēs varam redzēt, ka tas no konfigurācijas lasa _config[WebHostDefaults.ServerUrlsKey] un _config[DeprecatedServerUrlsKey].
WebHostDefaults.ServerUrlsKey vērtība ir fiksēta vērtība
DeprecatedServerUrlsKey vērtība tiek definēta WebHost objekta sākumā
Ak! Patiesība ir atklāta. Tātad konfigurācijas failā mēs varam iestatīt "server.urls".
Kopsavilkums:
Rezumējot, asp.net kodols nolasīs konfigurāciju vides mainīgajā, kad tas sāksies, un faktiskais mērķis ir projekta rekvizītiem pievienot šādu konfigurāciju:
Tas ir startēts konsoles režīmā un konstatēts, ka osta ir pārslēgta.
Tātad šī ir izstrādes vide, kā to izvietot ražošanas līnijā? Tas ir arī ļoti vienkārši, ņemot par piemēru Linux izvietošanu, izmantojot dēmona uzraudzītāju, lai sāktu programmu, pievienojiet vides mainīgos uzrauga startēšanas konfigurācijai:
Gūt panākumus ar lidojošām krāsām! Nav jāmaina neviena koda rindiņa, haha~ |