تكوين تطبيق "خدمة التطبيقات"

توضح هذه المقالة كيفية تكوين الإعدادات الشائعة لتطبيقات الويب أو الواجهة الخلفية للجوال أو تطبيق واجهة برمجة التطبيقات.

تكوين إعدادات التطبيق

في App Service، إعدادات التطبيق هي متغيرات تم تمريرها كمتغيرات البيئة إلى رمز التطبيق. بالنسبة لتطبيقات Linux والحاويات المخصصة، تمرر App Service إعدادات التطبيق إلى الحاوية باستخدام العلامة --env لتعيين متغير البيئة في الحاوية. في كلتا الحالتين، يتم حقنها في بيئة التطبيق عند بدء تشغيل التطبيق. عند إضافة إعدادات التطبيق أو إزالتها أو تحريرها، تقوم خدمة التطبيقات بتشغيل إعادة تشغيل التطبيق.

بالنسبة لمطوري ASP.NET وASP.NET Core، فإن إعداد إعدادات التطبيق في App Service يشبه إعدادها <appSettings> في Web.config أو appsettings.jsولكن القيم في App Service تتجاوز القيم الموجودة في Web.config أو appsettings.json. يمكنك الاحتفاظ بإعدادات التطوير (على سبيل المثال، كلمة مرور MySQL المحلية) في Web.config أو appsettings.json وأسرار الإنتاج (على سبيل المثال، كلمة مرور قاعدة بيانات Azure MySQL) بأمان في App Service. يستخدم نفس التعليمة البرمجية إعدادات التطوير خاصتك عندما تصحح الأخطاء محلياً، وتستخدم بيانات التشغيل السرية الخاصة بك عند توزيعه في Azure.

وبالمثل ، تحصل مكدسات اللغات الأخرى على إعدادات التطبيق كمتغيرات بيئية في وقت التشغيل. للاطلاع على الخطوات المحددة لمكدس اللغة، راجع:

تُشفَّر إعدادات التطبيق دائماً عند تخزينها (مشفرة في حالة الثبات).

ملاحظة

يمكن أيضا حل إعدادات التطبيق من Key Vault باستخدام مراجع Key Vault.

  1. في مدخل Azure، ابحث عن خدمات التطبيقات وحددها، ثم حدد تطبيقك.

    Search for App Services

  2. في القائمة اليمنى للتطبيق، حددإعدادات ConfigurationApp>.

    Application Settings

    بشكل افتراضي، يتم إخفاء قيم إعدادات التطبيق في البوابة الإلكترونية للأمان. للاطلاع على قيمة مخفية لإعداد تطبيق، انقر فوق حقل القيمة الخاص به. للاطلاع على القيم المخفية لجميع إعدادات التطبيق، انقر فوق الزر إظهار القيم .

  3. لإضافة إعداد تطبيق جديد، انقر فوق New application setting. لتحرير إعداد، انقر فوق الزر Edit على الجانب الأيمن.

  4. في مربع الحوار، يمكنك لصق الإعداد بالفتحة الحالية.

    لا يمكن أن تحتوي أسماء إعدادات التطبيقات على نقاط (.). إذا كان إعداد التطبيق يحتوي على نقطة، استبدال النقطة بشرطة سفلية في الحاوية.

    ملاحظة

    في خدمة تطبيق Linux افتراضية أو حاوية Linux مخصصة، يجب تكوين أي بنية مفتاح JSON متداخلة في اسم إعداد التطبيق مثل ApplicationInsights:InstrumentationKey اسم التطبيق في App Service كما هو الحال ApplicationInsights__InstrumentationKey بالنسبة لاسم المفتاح. وبعبارةٍ أخرى، ينبغي استبدال أي منها : بـ __ (شرطة سفلية مزدوجة).

  5. عند الانتهاء، انقر فوق Update. لا تنسى النقر فوق Save مرةً أخرى في صفحة Configuration.

تحرير إعدادات التطبيق بشكل مجمع

انقر فوق الزر تحرير متقدم . قم بتحرير الإعدادات في منطقة النص. عند الانتهاء، انقر فوق Update. لا تنسى النقر فوق Save مرةً أخرى في صفحة Configuration.

تحتوي إعدادات التطبيق على تنسيق JSON التالي:

[
  {
    "name": "<key-1>",
    "value": "<value-1>",
    "slotSetting": false
  },
  {
    "name": "<key-2>",
    "value": "<value-2>",
    "slotSetting": false
  },
  ...
]

تكوين سلاسل الاتصال

في مدخل Azure، ابحث عن خدمات التطبيقات وحددها، ثم حدد تطبيقك. في القائمة اليمنى للتطبيق، حددإعدادات ConfigurationApp>.

Application Settings

بالنسبة لمطوري ASP.NET و ASP.NET Core ، فإن إعداد سلاسل الاتصال في App Service يشبه تعيينها <connectionStrings> في Web.config، ولكن القيم التي قمت بتعيينها في App Service تتجاوز القيم الموجودة في Web.config. يمكنك الاحتفاظ بإعدادات التطوير (على سبيل المثال، ملف قاعدة بيانات) في Web.config وأسرار الإنتاج (على سبيل المثال، SQL بيانات اعتماد قاعدة البيانات) بأمان في App Service. يستخدم نفس التعليمة البرمجية إعدادات التطوير خاصتك عندما تصحح الأخطاء محلياً، وتستخدم بيانات التشغيل السرية الخاصة بك عند توزيعه في Azure.

بالنسبة إلى مكدسات اللغات الأخرى، من الأفضل استخدام إعدادات التطبيق بدلا من ذلك، لأن سلاسل الاتصال تتطلب تنسيقا خاصا في المفاتيح المتغيرة للوصول إلى القيم.

ملاحظة

هناك حالة واحدة قد ترغب فيها في استخدام سلاسل الاتصال بدلا من إعدادات التطبيق للغات non-.NET: يتم نسخ أنواع معينة من قواعد بيانات Azure احتياطيا مع التطبيق فقط إذا قمت بتكوين سلسلة اتصال لقاعدة البيانات في تطبيق App Service. لمزيد من المعلومات، راجع ما يتم نسخه احتياطيا. إذا لم تكن بحاجة إلى هذا النسخ الاحتياطي التلقائي، فاستخدم إعدادات التطبيق.

في وقت التشغيل، تتوفر سلاسل الاتصال كمتغيرات بيئة، مسبوقة بأنواع الاتصال التالية:

  • SQLServer: SQLCONNSTR_
  • MySQL: MYSQLCONNSTR_
  • SQLAzure: SQLAZURECONNSTR_
  • تقليد: CUSTOMCONNSTR_
  • PostgreSQL: POSTGRESQLCONNSTR_

على سبيل المثال، يمكن الوصول إلى سلسلة اتصال MySQL تسمى connectionstring1 كمتغير MYSQLCONNSTR_connectionString1البيئة . للاطلاع على الخطوات المحددة لمكدس اللغة، راجع:

تُشفَّر سلاسل الاتصال دائماً عند تخزينها (مشفرة في حالة الثبات).

ملاحظة

يمكن أيضا حل سلاسل الاتصال من Key Vault باستخدام مراجع Key Vault.

  1. في مدخل Azure، ابحث عن خدمات التطبيقات وحددها، ثم حدد تطبيقك.

    Search for App Services

  2. في القائمة اليمنى للتطبيق، حددإعدادات ConfigurationApp>.

    Application Settings

    بشكل افتراضي، يتم إخفاء قيم سلاسل الاتصال في البوابة الإلكترونية للأمان. لرؤية قيمة مخفية لسلسلة اتصال، انقر فوق حقل القيمة الخاص بها. للاطلاع على القيم المخفية لجميع سلاسل الاتصال، انقر فوق الزر إظهار القيمة .

  3. لإضافة سلسلة اتصال جديدة، انقر فوق سلسلة اتصال جديدة. لتحرير سلسلة اتصال، انقر فوق الزر تحرير على الجانب الأيسر.

  4. في مربع الحوار ، يمكنك لصق سلسلة الاتصال بالفتحة الحالية.

  5. عند الانتهاء، انقر فوق Update. لا تنسى النقر فوق Save مرةً أخرى في صفحة Configuration.

تحرير سلاسل الاتصال بشكل مجمع

انقر فوق الزر تحرير متقدم . قم بتحرير سلاسل الاتصال في منطقة النص. عند الانتهاء، انقر فوق Update. لا تنسى النقر فوق Save مرةً أخرى في صفحة Configuration.

تحتوي سلاسل الاتصال على تنسيق JSON التالي:

[
  {
    "name": "name-1",
    "value": "conn-string-1",
    "type": "SQLServer",
    "slotSetting": false
  },
  {
    "name": "name-2",
    "value": "conn-string-2",
    "type": "PostgreSQL",
    "slotSetting": false
  },
  ...
]

تكوين إعدادات مكدس اللغة

تكوين الإعدادات العامة

في مدخل Azure، ابحث عن خدمات التطبيقات وحددها، ثم حدد تطبيقك. في القائمة اليمنى للتطبيق، حدد التكوينالإعدادات>العامة.

General settings

هنا ، يمكنك تكوين بعض الإعدادات الشائعة للتطبيق. تتطلب منك بعض الإعدادات التوسع إلى مستويات تسعير أعلى.

  • إعدادات المكدس: مكدس البرامج لتشغيل التطبيق، بما في ذلك إصدارات اللغة وSDK.

    بالنسبة لتطبيقات Linux، يمكنك تحديد إصدار وقت تشغيل اللغة وتعيين أمر بدء تشغيل اختياري أو ملف أمر بدء تشغيل .

    General settings for Linux containers

  • إعدادات النظام الأساسي: يتيح لك تكوين إعدادات نظام الاستضافة الأساسي، بما في ذلك:

    • حالة FTP: السماح ب FTPS فقط أو تعطيل FTP تماما.

    • التقييم بالبت: 32 بت أو 64 بت. (الإعدادات الافتراضية إلى 32 بت لخدمة التطبيقات التي تم إنشاؤها في البوابة الإلكترونية.)

    • بروتوكول WebSocket: ASP.NET SignalR أو socket.io ، على سبيل المثال.

    • التشغيل دائما: يحافظ على تحميل التطبيق حتى في حالة عدم وجود حركة مرور. عندما لا يتم تشغيل Always On (افتراضي)، يتم إلغاء تحميل التطبيق بعد 20 دقيقة بدون أي طلبات واردة. يمكن أن يتسبب التطبيق الذي تم تفريغه في حدوث زمن انتقال مرتفع للطلبات الجديدة بسبب وقت الإحماء. عند تشغيل Always On ، يرسل موازن التحميل الأمامي طلب GET إلى جذر التطبيق كل خمس دقائق. يمنع ping المستمر من إلغاء تحميل التطبيق.

      دائما قيد التشغيل مطلوب ل WebJobs المستمر أو ل WebJobs التي يتم تشغيلها باستخدام تعبير CRON.

    • إصدار HTTP: اضبط على 2.0 لتمكين دعم بروتوكول HTTPS/2 .

    ملاحظة

    تدعم معظم المتصفحات الحديثة بروتوكول HTTP/2 عبر طبقة النقل الآمنة فقط، بينما تستمر حركة المرور غير المشفرة في استخدام HTTP/1.1. لضمان اتصال متصفحات العملاء بتطبيقك باستخدام HTTP/2، قم بتأمين اسم DNS المخصص. لمزيد من المعلومات، راجع تأمين اسم DNS مخصص باستخدام ربط TLS/SSL في Azure App Service.

    • ترابط توجيه طلبات التطبيقات (ARR): في التوزيع متعدد المثيلات، تأكد من توجيه العميل إلى نفس المثيل طوال مدة جلسة العمل. يمكنك تعيين هذا الخيار إلى Off للتطبيقات عديمة الجنسية.
  • تصحيح الأخطاء: تمكين تصحيح الأخطاء عن بعد لتطبيقات ASP.NET أو ASP.NET Core أو Node.js. يتم إيقاف تشغيل هذا الخيار تلقائياً بعد 48 ساعة.

  • شهادات العميل الواردة: تتطلب شهادات العميل في المصادقة المتبادلة.

تكوين المستندات الافتراضية

هذا الإعداد مخصص فقط لتطبيقات Windows.

المستند الافتراضي هو صفحة الويب التي يتم عرضها في عنوان URL الجذر لتطبيق App Service. يتم استخدام أول ملف مطابق في القائمة. إذا كان التطبيق يستخدم وحدات نمطية تستند إلى عنوان URL بدلا من عرض محتوى ثابت، فلن تكون هناك حاجة إلى المستندات الافتراضية.

  1. في مدخل Azure، ابحث عن خدمات التطبيقات وحددها، ثم حدد تطبيقك.

  2. في القائمة اليمنى للتطبيق، حدد ConfigurationDefault>Documents.

    Default documents

  3. لإضافة مستند افتراضي، انقر فوق مستند جديد. لإزالة مستند افتراضي، انقر فوق حذف على يساره.

تعيين مسار عنوان URL إلى دليل

بشكل افتراضي، تبدأ خدمة التطبيقات تشغيل تطبيقك من الدليل الجذر لرمز التطبيق. ولكن بعض أطر عمل الويب لا تبدأ في الدليل الجذر. على سبيل المثال، يبدأ ⁧⁩Laravel⁧⁩ في الدليل الفرعي ⁧public⁩. يمكن الوصول إلى مثل هذا التطبيق على http://contoso.com/publicسبيل المثال ، ولكنك تريد عادة التوجيه http://contoso.com إلى public الدليل بدلا من ذلك. إذا كان ملف بدء تشغيل تطبيقك في مجلد مختلف، أو إذا كان المستودع يحتوي على أكثر من تطبيق واحد، فيمكنك تحرير التطبيقات والدلائل الافتراضية أو إضافتها.

  1. في مدخل Azure، ابحث عن خدمات التطبيقات وحددها، ثم حدد تطبيقك.

  2. في القائمة اليمنى للتطبيق، حدد تعيينات مسار التكوين>

  3. انقر فوق تطبيق ظاهري جديد أو دليل.

    • لتعيين دليل ظاهري إلى مسار فعلي، اترك خانة الاختيار الدليل محددة. حدد الدليل الظاهري والمسار النسبي (الفعلي) المقابل إلى جذر موقع الويب (D:\home).
    • لوضع علامة على دليل ظاهري باعتباره تطبيق ويب، بادر بإلغاء تحديد خانة الاختيار Directory.

    Directory check box

  4. انقر فوق موافق.

تكوين تعيينات المعالج

بالنسبة لتطبيقات Windows، يمكنك تخصيص تعيينات معالج IIS والتطبيقات والدلائل الظاهرية. تتيح لك تعيينات المعالج إضافة معالجات برامج نصية مخصصة للتعامل مع الطلبات الخاصة بملحقات ملفات معينة.

لإضافة معالج مخصص:

  1. في مدخل Azure، ابحث عن خدمات التطبيقات وحددها، ثم حدد تطبيقك.

  2. في القائمة اليمنى للتطبيق، حدد تعيينات ConfigurationPath>.

    Path mappings

  3. انقر فوق تعيين معالج جديد. تكوين المعالج كما يلي:

    • التمديد. ملحق الملف الذي تريد معالجته، مثل *.php أو handler.fcgi.
    • معالج البرنامج النصي. المسار المطلق لمعالج البرنامج النصي لك. تتم معالجة الطلبات إلى الملفات التي تتطابق مع ملحق الملف بواسطة معالج البرنامج النصي. استخدم المسار D:\home\site\wwwroot للإشارة إلى الدليل الجذر لتطبيقك.
    • الحجج. وسيطات سطر الأوامر الاختيارية لمعالج البرنامج النصي.
  4. انقر فوق موافق.

تكوين حاويات مخصصة

الخطوات التالية