Prieš dvi dienas perspausdinau .NET branduolio paleidimo analizę, nes buvau įsipainiojęs į numatytąjį 5000 prievadą, kai jis buvo išleistas, todėl atidžiai jį išstudijavau.
1. IIS integracija
Jei naudojate IIS kaip pagrindinį kompiuterį, tai nėra problema, galingas IIS gali padėti mums sukonfigūruoti svetainės domeno vardą, prievadą ir kt. Kalbant apie tai, kaip įdiegti asp.net pagrindinę žiniatinklio programą IIS, tai čia ne esmė. Apytiksliai apibūdinkite:
Turite atsisiųsti "Net Core SDK" ir "Server Hosting", o atsisiuntimo adresas yra https://www.microsoft.com/net/download
Įdiegę patikrinkite, ar .NET Core SDK sėkmingai įdiegtas komandinėje eilutėje dotnet info
Ar serverio pagrindinis kompiuteris sėkmingai įdiegtas IIS modulyje ir apdorojimo programos susiejimas parodytas toliau
Tada nustatykite svetainę ir nurodykite publikavimo svetainės failus
Galiausiai, programų telkinys turėtų būti sukonfigūruotas ir pasirinkti nevaldomas, kad būtų serverio pagrindinio kompiuterio persiuntimo užklausa.
2. Linux aplinka
Jau nekalbant apie konkretų įrengimą, jų taip pat yra daug. Pagal oficialioje svetainėje pateiktas instrukcijas, tai yra, įdiekite .NET Core veikiančią aplinką ir ji gali veikti.
Čia yra rekomenduojamas tinklaraščio įrašas: "ASP.NET Core" programų diegimas gamyboje (CentOS7)
Grįžkime prie pagrindinio dalyko, kaip sukonfigūruoti URL ir prievado parametrus
1. Nurodykite pagrindiniame programos metode
Šis metodas yra nelankstus ir ne toks elegantiškas, net jei jis skaitomas pridedant konfigūracijos failą. Šiuo metu jaučiau, kad "Microsoft" tikrai nerekomenduos tokio naudojimo, todėl toliau jo ieškojau.
2. Perduokite aplinkos kintamąjį
Mačiau straipsnį internete Kaip sukonfigūruoti Kestrel URL ASP.NET Core RC2,
Nors jis vis dar sukonfigūruotas per konfigūracijos failą, jam nereikia skaityti konfigūracijos informacijos kitiems straipsniams, ir jį galima naudoti tiesiogiai susiejant arba įklijuojant kodą, kad pamatytumėte:
hosting.json
Program.cs
Tokiu būdu jis taip pat gali klausytis
Dabar klauso: http://localhost:60000
Dabar klausytis: http://localhost:60001
Argi tai nėra nuostabu! Aš negaliu pakęsti faktinės kovos, atimti šaltinio kodą! Iki šiol geriausias dalykas apie .NET Core yra tai, kad jis turi šaltinio kodą!
Pagal šaltinį galime žinoti, kad tai daugiausia yra "WebHostBuilder" klasė, priklausanti "Microsoft.AspNetCore.Hosting" vardų sričiai.
Pagrindinis metodas yra "Build"
Pagrindinis dėmesys čia yra sukurti WebHost objektą ir tada ieškoti toliau
Pažvelgę į šaltinio kodą naudodami inicijavimo metodą, galime sužinoti URL adresą, sukurtą naudojant "EnsureServer" metodą
Čia matome, kad iš konfigūracijos skaitoma _config[WebHostDefaults.ServerUrlsKey] ir _config[DeprecatedServerUrlsKey].
WebHostDefaults.ServerUrlsKey reikšmė yra fiksuota reikšmė
DeprecatedServerUrlsKey reikšmė apibrėžiama WebHost objekto pradžioje
O! Tiesa atskleidžiama. Taigi konfigūracijos faile galime nustatyti "server.urls".
Santrauka:
Apibendrinant galima pasakyti, kad asp.net branduolys nuskaitys konfigūraciją aplinkos kintamajame, kai jis bus paleistas, o tikroji esmė yra pridėti šią konfigūraciją prie projekto ypatybių:
Jis buvo paleistas konsolės režimu ir nustatyta, kad prievadas buvo perjungtas.
Taigi tai yra kūrimo aplinka, kaip ją įdiegti gamybos linijoje? Tai taip pat labai paprasta, atsižvelgiant į "Linux" diegimą kaip pavyzdį, naudojant demono prižiūrėtoją, kad paleistumėte programą, pridėkite aplinkos kintamuosius prie prižiūrėtojo paleidimo konfigūracijos:
Sėkmė su plaukiojančiomis spalvomis! Nereikia keisti nė vienos kodo eilutės, haha~ |