ASP.NET Core tarpinio serverio nustatymai: launchSettings.json prieš produkciją
Atskirkite kūrimo paleidimo profilio tarpinio serverio reikšmes nuo aplinkos ir HTTP apdorotuvo, kurį naudoja įdiegtas ASP.NET Core procesas.
launchSettings.json esanti tarpinio serverio reikšmė priklauso kūrimo paleidimo profiliui. Publikuojant programą tas profilis netampa IIS darbinio proceso, paslaugos ar konteinerio aplinka.
Jei įdiegtoje aplinkoje kyla klaida, ištirkite procesą, kuris iš tikrųjų paleidžia programą. Jo aplinka, paskyra ir HTTP apdorotuvas nustato, kokie tarpinio serverio įvesties duomenys yra prieinami.
| Kur tai veikia | Ką palyginti po įdiegimo |
|---|---|
| IDE paleidimo profilis | Pagrindinio proceso aplinka |
| Interaktyvi vartotojo sesija | Paslaugos paskyra ir jos tarpinio serverio nustatymai |
| Rankiniu būdu sukurtas HTTP klientas | Apdorotuvas, kurį naudoja programos įterptas klientas |
Šiuolaikinio HttpClient numatytoji tarpinio serverio inicializacija turi nuo platformos priklausančias aplinkos ir sistemos konfigūracijos taisykles. Aiškiai sukonfigūruotas apdorotuvas gali nepaisyti šių numatytųjų reikšmių. Naudodami IHttpClientFactory patikrinkite pavadinto kliento pagrindinio apdorotuvo registraciją ir vardą, gautą iškvietimo vietoje. Patikrinkite abu įvesties duomenis prieš darydami išvadą, kad konfigūracijos failas buvo ignoruotas.
Senesni .NET Framework system.net/defaultProxy pavyzdžiai aprašo kitą konfigūracijos modelį. Neįklijuokite šios dalies į šiuolaikinį diegimo failą ir nemanaukit, kad kiekviena .NET HTTP realizacija ją naudoja. Diegiant per IIS, ASP.NET Core modulis taip pat turi palaikomą proceso aplinkos konfigūravimo mechanizmą; pridėdami reikšmes išsaugokite likusią prieglobos konfigūraciją.
Užfiksuokite, ar laukiamas kintamasis egzistuoja, neskelbdami visos jo reikšmės su prisijungimo duomenimis. Tada patvirtinkite, kad nesėkmingą užklausą atliekantis klientas naudoja tą šaltinį. Teisingai sukonfigūruotas paleidiklis negali pataisyti kliento, kuris sąmoningai naudoja kitą kelią.