Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 42810|Svar: 1

[.NET Core] .NET Core-hjemmesiden starter domænenavn- og portkonfigurationen

[Kopier link]
Opslået på 24/05/2017 13.30.59 | | | |
For to dage siden genudskrev jeg en .NET core-startupanalyse, fordi jeg var viklet ind i standard 5000-porten, da den blev udgivet, så jeg studerede den grundigt.

1. IIS-integration

Hvis du bruger IIS som vært, er disse ikke et problem, kraftfuldt IIS kan hjælpe os med at konfigurere domænenavn, port osv. på siden. Hvad angår hvordan man deployerer en asp.net kerne-webapplikation på IIS, er det ikke pointen her. Beskriv det groft sådan:

Du skal downloade Net Core SDK og Server Hosting, og downloadadressen er https://www.microsoft.com/net/download



Efter installationen skal du tjekke, om .NET Core SDK'en er installeret korrekt på kommandolinjen dotnet-info

Om serverværten er vellykket installeret i IIS-modulet og handler-mapping, vises nedenfor



Opsæt derefter siden og angiv filerne til udgivelsessiden

Endelig bør programpuljen konfigureres og vælges uadministreret, så der er en serverhost-videresendelsesanmodning.





2. Linux-miljø

For ikke at nævne den specifikke installation, der er også mange af dem. Ifølge instruktionerne på den officielle hjemmeside, altså installer .NET Core-kørende miljøet, og det kan køre.

Her er et anbefalet blogindlæg til din egen reference: Udrulning ASP.NET Core-applikationer til produktion (CentOS7)



Tilbage til hovedpunktet, hvordan man konfigurerer URL- og portparametre

1. Angiv i hovedmetoden for programmet




Denne tilgang er ufleksibel og ikke så elegant, selv hvis den læses ved at tilføje en konfigurationsfil. På dette tidspunkt følte jeg, at Microsoft bestemt ikke ville anbefale sådan en anvendelse, så jeg fortsatte med at lede efter det.

2. Send miljøvariablen

Jeg så en artikel på internettet om, hvordan man konfigurerer Kestrel-URL'er i ASP.NET Core RC2,

Selvom den stadig konfigureres via konfigurationsfilen, behøver den ikke at læse konfigurationsinformationen op til andre artikler, og den kan bruges direkte ved binding eller indsætte koden for at se:

hosting.json


Program.cs



På den måde kan den også lytte

Nu lytter vi videre: http://localhost:60000

Nu lytter vi videre: http://localhost:60001

Er det ikke fantastisk! Jeg kan ikke holde ud at kæmpe selv, fradrag kildekoden! Det bedste ved .NET Core er uden tvivl, at det har kildekode!

Ved at kilde kan vi vide, at det hovedsageligt er WebHostBuilder-klassen under navneområdet Microsoft.AspNetCore.Hosting.

Hovedmetoden er Byg



Hovedfokus her er at bygge et WebHost-objekt og derefter kigge nærmere

Ved at se på kildekoden via Initialize-metoden kan vi kende URL-adressen, der er oprettet af EnsureServer-metoden




Her kan vi se, at den læser _config[WebHostDefaults.ServerUrlsKey] og _config[DeprecatedServerUrlsKey] fra konfigurationen.

Værdien af WebHostDefaults.ServerUrlsKey er en fast værdi



Værdien af DeprecatedServerUrlsKey defineres i begyndelsen af WebHost-objektet



Åh! Sandheden bliver afsløret. Så vi kan sætte "server.urls" i konfigurationsfilen.


Resumé:

For at opsummere vil asp.net kerne læse konfigurationen i miljøvariablen, når den starter, og det egentlige formål er at tilføje følgende konfiguration til projektets egenskaber:



Den er startet i konsoltilstand og har fundet ud af, at porten er blevet skiftet.

Så dette er et udviklingsmiljø, hvordan implementerer man det på produktionslinjen? Dette er også meget enkelt, tag Linux-udrulning som eksempel, brug daemon-supervisoren til at starte programmet, tilføj miljøvariabler til supervisorens opstartskonfiguration:


Lykkes med glans! Ikke en eneste kodelinje behøver at blive ændret, haha~




Tidligere:Start-supervisor: Fejl: Et andet program lytter allerede på en port th...
Næste:Problemer med tilpasning af CSS PC og mobiltelefonens bredde
Opslået på 06/10/2021 09.49.34 |
Godt arbejde. Tak til ejeren for at stille !!
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com