إنشاء تطبيق خدمات App

تشرح هذه المقالة كيفية تكوين الإعدادات العامة لتطبيقات الويب أو الواجهة الخلفية للهاتف المحمول أو تطبيق API. لمزيد من المعلومات، انظرمرجع إعدادات التطبيق لدالات Azure.

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

إشعار

  • يمكن أن تحتوي أسماء إعدادات التطبيق فقط على أحرف وأرقام (0-9) ونقاط (".") وتسطير أسفل السطر ("_")
  • يجب إلغاء الأحرف الخاصة في قيمة إعداد التطبيق حسب الحاجة بواسطة نظام التشغيل الهدف

على سبيل المثال لتعيين متغير بيئة في App Service Linux بالقيمة التي "pa$$w0rd\" يجب أن تكون السلسلة لإعداد التطبيق: "pa\$\$w0rd\\"

في 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باستخداممراجع Azure Key Vault.

  1. فيمدخل Microsoft Azure، ابحث عن ⁧App Services⁧⁩وحدد تطبيقك.

    Search for App Services

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

    Application Settings

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

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

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

    إشعار

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

  5. عند الانتهاء، حدد تحديث. لا تنس تحديد حفظ مرة أخرى في صفحة التكوين .

تحرير إعدادات التطبيق بطريقة مجمّعة

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

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

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

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

فيمدخل Microsoft Azure، ابحث عن ⁧App Services⁧⁩وحدد تطبيقك. في القائمة اليسرى للتطبيق، قم بتحديدConfiguration>إعدادات التطبيق.

Application Settings

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

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

إشعار

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

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

  • SQLServer: SQLCONNSTR_
  • MySQL: MYSQLCONNSTR_
  • SQLAzure: SQLAZURECONNSTR_
  • Custom: CUSTOMCONNSTR_
  • PostgreSQL: POSTGRESQLCONNSTR_

إشعار

يجب أن تقوم تطبيقات .NET التي تستهدف PostgreSQL بتعيين سلسلة الاتصال إلى مخصص كحل بديل لمسألة معرفة في .NET EnvironmentVariablesConfigurationProvider

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

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

إشعار

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

  1. فيمدخل Microsoft Azure، ابحث عن ⁧App Services⁧⁩وحدد تطبيقك.

    Search for App Services

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

    Application Settings

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

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

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

  5. عند الانتهاء، حدد تحديث. لا تنس تحديد حفظ مرة أخرى في صفحة التكوين .

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

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

سلاسل الاتصال لها تنسيق JSON التالي:

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

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

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

فيمدخل Microsoft Azure، ابحث عن ⁧App Services⁧⁩وحدد تطبيقك. في القائمة اليسرى للتطبيق، قم بتحديدConfiguration>إعدادات عامة.

General settings

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

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

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

    General settings for Linux containers

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

    • بت النظام الأساسي: 32 بت أو 64 بت. مخصص لتطبيقات Windows فقط.
    • حالة FTP: السماح بـ FTPS فقط أو تعطيل FTP تماماً.
    • إصدار HTTP: التعيين إلى 2.0من أجل تمكين دعم بروتوكولHTTPS/2.

    إشعار

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

    • مآخذ ويب: بالنسبة إلى ASP.NET SignalR أو socket.io، على سبيل المثال.

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

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

    • ترابط توجيه طلبات التطبيقات (ARR): في التوزيع متعدد المثيلات، تأكد من توجيه العميل إلى نفس المثيل طوال مدة جلسة العمل. يمكنك تعيين هذا الخيار إلى Off للتطبيقات عديمة الجنسية.

    • HTTPS فقط: عند التمكين، تتم إعادة توجيه جميع حركة مرور HTTP إلى HTTPS.

    • الحد الأدنى لإصدار TLS: حدد الحد الأدنى لإصدار تشفير TLS الذي يتطلبه تطبيقك.

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

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

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

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

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

  1. فيمدخل Microsoft Azure، ابحث عن ⁧App Services⁧⁩وحدد تطبيقك.

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

    Default documents

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

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

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

هام

يتوفر الدليل الظاهري لميزة المسار الفعلي فقط على تطبيقات Windows.

  1. فيمدخل Microsoft Azure، ابحث عن ⁧App Services⁧⁩وحدد تطبيقك.

  2. في القائمة اليسرى للتطبيق، حدد Configuration>مخططات المسار

  3. حدد New virtual application or directory.

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

    Directory check box

  4. حدد موافق.

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

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

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

  1. فيمدخل Microsoft Azure، ابحث عن ⁧App Services⁧⁩وحدد تطبيقك.

  2. في قائمة التطبيق اليسرى، حددConfiguration>مخططات المسار.

    Path mappings

  3. حدد New handler mapping. تكوين المعالج كما يلي:

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

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

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