ASP.NET Core പ്രോക്സി ക്രമീകരണങ്ങൾ: launchSettings.json vs പ്രൊഡക്ഷൻ
വികസന ലോഞ്ച്-പ്രൊഫൈലിലെ പ്രോക്സി മൂല്യങ്ങളെ വിന്യസിച്ച ASP.NET Core പ്രോസസ് ഉപയോഗിക്കുന്ന പരിസ്ഥിതിയിൽനിന്നും HTTP ഹാൻഡ്ലറിൽനിന്നും വേർതിരിക്കുക.
launchSettings.json-ലെ പ്രോക്സി മൂല്യം വികസന ലോഞ്ച് പ്രൊഫൈലിന്റേതാണ്. ആപ്ലിക്കേഷൻ പ്രസിദ്ധീകരിക്കുന്നത് ആ പ്രൊഫൈലിനെ IIS വർക്കർ, സേവനം അല്ലെങ്കിൽ കണ്ടെയ്നറിന്റെ പരിസ്ഥിതിയാക്കുന്നില്ല.
വിന്യസിച്ച പരിസ്ഥിതിയിലെ പരാജയത്തിന്, ആപ്ലിക്കേഷൻ യഥാർത്ഥത്തിൽ ആരംഭിക്കുന്ന പ്രോസസ് പരിശോധിക്കുക. അതിന്റെ പരിസ്ഥിതി, അക്കൗണ്ട്, HTTP ഹാൻഡ്ലർ എന്നിവ ഏതൊക്കെ പ്രോക്സി ഇൻപുട്ടുകൾ ലഭ്യമാണെന്ന് നിർണ്ണയിക്കുന്നു.
| എവിടെ പ്രവർത്തിക്കുന്നു | വിന്യസനത്തിനുശേഷം എന്ത് താരതമ്യം ചെയ്യണം |
|---|---|
| IDE ലോഞ്ച് പ്രൊഫൈൽ | ഹോസ്റ്റ് പ്രോസസിന്റെ പരിസ്ഥിതി |
| ഇന്ററാക്ടീവ് ഉപയോക്തൃ സെഷൻ | സേവന അക്കൗണ്ടും അതിന്റെ പ്രോക്സി ക്രമീകരണങ്ങളും |
| നേരിട്ട് സൃഷ്ടിച്ച HTTP ക്ലയന്റ് | ആപ്ലിക്കേഷന്റെ ഇൻജക്ട് ചെയ്ത ക്ലയന്റ് ഉപയോഗിക്കുന്ന ഹാൻഡ്ലർ |
ആധുനിക HttpClient-ന്റെ സ്വതേയുള്ള പ്രോക്സി ആരംഭത്തിന് പ്ലാറ്റ്ഫോം-നിർദ്ദിഷ്ട പരിസ്ഥിതി, സിസ്റ്റം കോൺഫിഗറേഷൻ നിയമങ്ങളുണ്ട്. വ്യക്തമായി കോൺഫിഗർ ചെയ്ത ഹാൻഡ്ലർക്ക് ആ സ്വതേ മൂല്യങ്ങൾ അസാധുവാക്കാം. IHttpClientFactory ഉപയോഗിക്കുമ്പോൾ പേരിട്ട ക്ലയന്റിന്റെ പ്രാഥമിക ഹാൻഡ്ലർ രജിസ്ട്രേഷൻ ഉം വിളിക്കുന്ന സ്ഥലത്ത് ലഭിച്ച പേരും പരിശോധിക്കുക. ഒരു കോൺഫിഗറേഷൻ ഫയൽ അവഗണിക്കപ്പെട്ടുവെന്ന് തീരുമാനിക്കുന്നതിന് മുമ്പ് രണ്ട് ഇൻപുട്ടുകളും പരിശോധിക്കുക.
.NET Framework-ന്റെ പഴയ system.net/defaultProxy ഉദാഹരണങ്ങൾ മറ്റൊരു കോൺഫിഗറേഷൻ മാതൃക വിവരിക്കുന്നു. ആ വിഭാഗം ആധുനിക വിന്യസന ഫയലിൽ ഒട്ടിക്കരുത്, ഓരോ .NET HTTP നടപ്പാക്കലും അത് ഉപയോഗിക്കുമെന്ന് അനുമാനിക്കരുത്. IIS വിന്യസനത്തിൽ, ASP.NET Core മൊഡ്യൂളിനും പ്രോസസ് പരിസ്ഥിതി കോൺഫിഗറേഷനുള്ള പിന്തുണയുള്ള സംവിധാനമുണ്ട്; മൂല്യങ്ങൾ ചേർക്കുമ്പോൾ ബാക്കിയുള്ള ഹോസ്റ്റിംഗ് കോൺഫിഗറേഷൻ നിലനിർത്തുക.
പ്രതീക്ഷിത വേരിയബിൾ നിലവിലുണ്ടോ എന്ന് രേഖപ്പെടുത്തുക, അതിന്റെ ക്രെഡൻഷ്യലുകൾ ഉൾക്കൊള്ളുന്ന പൂർണ്ണ മൂല്യം പ്രസിദ്ധീകരിക്കാതെ. തുടർന്ന് പരാജയപ്പെട്ട അഭ്യർത്ഥന നടത്തുന്ന ക്ലയന്റ് ആ ഉറവിടം ഉപയോഗിക്കുന്നുവെന്ന് സ്ഥിരീകരിക്കുക. ശരിയായി കോൺഫിഗർ ചെയ്ത ലോഞ്ചറിന് മനഃപൂർവം മറ്റൊരു വഴി ഉപയോഗിക്കുന്ന ക്ലയന്റിനെ നന്നാക്കാനാവില്ല.