הגדרות פרוקסי ב-ASP.NET Core: launchSettings.json מול סביבת ייצור
הבחינו בין ערכי פרוקסי של פרופיל הפעלה לפיתוח לבין הסביבה ומטפל ה-HTTP שבהם משתמש תהליך ASP.NET Core שהופץ.
ערך פרוקסי ב-launchSettings.json שייך לפרופיל הפעלה לפיתוח. פרסום היישום אינו הופך את הפרופיל הזה לסביבה של תהליך עבודה של IIS, של שירות או של מכולה.
בכשל בסביבה שהופצה, בדקו את התהליך שבאמת מפעיל את היישום. הסביבה, החשבון ומטפל ה-HTTP שלו קובעים אילו קלטי פרוקסי זמינים.
| איפה זה עובד | מה להשוות לאחר ההפצה |
|---|---|
| פרופיל הפעלה ב-IDE | סביבת תהליך המארח |
| הפעלת משתמש אינטראקטיבית | חשבון השירות והגדרות הפרוקסי שלו |
| לקוח HTTP שנוצר ידנית | המטפל שבו משתמש הלקוח המוזרק של היישום |
לאתחול הפרוקסי המוגדר כברירת מחדל ב-HttpClient המודרני יש כללי סביבה ותצורת מערכת התלויים בפלטפורמה. מטפל שהוגדר במפורש יכול לעקוף את ברירות המחדל הללו. עם IHttpClientFactory, בדקו את רישום המטפל הראשי של הלקוח הנקוב ואת השם שמתקבל במקום הקריאה. בדקו את שני הקלטים לפני שתסיקו שקובץ תצורה התעלמו ממנו.
דוגמאות system.net/defaultProxy הוותיקות של .NET Framework מתארות מודל תצורה אחר. אל תדביקו את הקטע הזה בקובץ פריסה מודרני ואל תניחו שכל מימוש HTTP של .NET צורך אותו. בפריסת IIS, למודול ASP.NET Core יש גם מנגנון נתמך לתצורת סביבת תהליך; שמרו על שאר תצורת האחסון בעת הוספת ערכים.
תעדו אם המשתנה הצפוי קיים בלי לפרסם את ערכו המלא הנושא פרטי זיהוי. לאחר מכן ודאו שהלקוח שמבצע את הבקשה שנכשלה משתמש במקור הזה. מפעיל שמוגדר כראוי אינו יכול לתקן לקוח שמשתמש במכוון במסלול אחר.