الأسئلة الشائعة وتحديد المشاكل وحلّها
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
تقدّم هذه الصفحة إجابات عن الأسئلة الشائعة حول
App Hosting.
App Hosting الأسئلة الشائعة
هل تتوافق App Hosting مع أُطر عمل أخرى غير Next.js وAngular؟
توفّر App Hosting إمكانية إنشاء التطبيقات ونشرها بشكل مسبق الإعداد لكل من Next.js وAngular، حيث التزمنا بفهم هذه الأُطر وتفسير إعداداتها الأصلية. بالنسبة إلى عدد من
الأُطر الأخرى، يتيح منتدى المطوّرين استخدام App Hosting
محوّلات الأُطر. بالإضافة إلى ذلك، بالنسبة إلى أي تطبيق Node.js يتضمّن نصًا برمجيًا للإنشاء والبدء، ستحاول App Hosting إنشاء التطبيق، ولكن لا يمكنها ضمان نجاح العملية بشكل موثوق. اطّلِع على مقالة دمج إطار العمل.
في أي مناطق تتوفّر خدمة Firebase App Hosting؟
من المرجّح أن يتوسّع نطاق المناطق التي يتوفّر فيها App Hosting بمرور الوقت. يمكنك الاطّلاع على
مواقع App Hosting
للحصول على أحدث المعلومات.
هل يمكنني استخدام GitLab أو موفّري Git آخرين غير GitHub لعمليات النشر؟
لا يمكنك ذلك حاليًا، ولكنّنا نخطّط لإتاحة استخدام موفّري خدمات آخرين في App Hosting على المدى الطويل.
لماذا لا يمكنني العثور على مستودعي في واجهة مستخدم وحدة تحكّم Firebase؟
إذا لم يظهر المستودع في قائمة الخيارات عند إنشاء خلفية جديدة في وحدة تحكّم Firebase، جرِّب أولاً النقر على إعادة تحميل القائمة. إذا لم يكن المستودع المفضّل متاحًا بعد، قد تحتاج إلى إضافته باستخدام الخيار منح إذن الوصول إلى مستودع جديد في GitHub.
بالإضافة إلى ذلك، يمكنك إدارة المستودعات باستخدام تطبيق GitHub.Firebase App Hosting لإجراء ذلك، انتقِل إلى ملفك الشخصي على GitHub، وانقر على الإعدادات ثم على التطبيقات. في صف تطبيق Firebase App Hosting ضمن الجدول، انقر على ضبط
لإدارة المستودعات.
لماذا لا يتم عرض موقعي الإلكتروني بشكلٍ طبيعي في WebView لتطبيق Android على الأجهزة الجوّالة؟
قد يلاحظ مطوّرو التطبيقات الذين أعدّوا نطاقًا مخصّصًا باستخدام وحدة تحكّم Firebase قبل الربع الثالث من عام 2025 أنّ الموقع الإلكتروني لا يظهر بشكل صحيح في WebView على Android. يحدث ذلك لأنّ سجلّات CNAME المستخدَمة خلال تلك الفترة لم تكن متوافقة مع Android WebView.
لحلّ هذه المشكلة، عليك إزالة النطاق المخصّص من الخلفية App Hosting
وإعادة إضافته. ستوفّر واجهة المستخدم المعدَّلة لوحدة التحكّم 3 سجلّات جديدة، وهي سجلّ A وسجلّ TXT للنطاق، وسجلّ CNAME للنطاق الفرعي الخاص بتحدّي ACME (للشهادات)، ويجب استخدام هذه السجلّات بدلاً من سجلّ CNAME السابق.
كيف يمكنني تغيير المستودع المرتبط بمشروع App Hosting؟
لا يمكن حاليًا تغيير المستودع. ومع ذلك، يمكنك إنشاء خلفية جديدة مرتبطة بالمستودع المفضّل ضمن المشروع نفسه، أو إنشاء خلفية جديدة في مشروع منفصل.
تعتمد العناوين على إطار العمل. نفِّذ الإجراءات التي تتّخذها عادةً في إطار عملك.
هل تتوفّر محاكي للتطوير على الجهاز باستخدام App Hosting؟
نعم، يمكنك إجراء اختبارات محلية لتطبيقك قبل نشره باستخدام محاكي App Hosting، وهو جزء من مجموعة أدوات المحاكاة المحلية لمنصة Firebase.App Hosting اطّلِع على الاختبار المحلي لعملية نشر تطبيقك .
لماذا تظهر لي أخطاء في App Hosting ولكن ليس في Cloud Build؟
في مثل هذه الحالات، من المحتمل أن يكون الخطأ ناتجًا عن Cloud Run.
يمكنك الاطّلاع على حالة طرح الميزة للتأكّد.
كيف يمكنني تغيير حساب GitHub المرتبط أو إزالته؟
لإزالة حساب GitHub المرتبط، افتح ربط حساب المطوّر، وتأكَّد من تحديد مشروعك، ثم احذف عملية الربط firebase-app-hosting-github-oath
وعملية الربط التي تبدأ بـ apphosting-github-conn-
. عند فتح App Hosting في وحدة تحكّم Firebase، يجب أن تتمكّن الآن من إعداد اتصال جديد بحساب GitHub.
كيف يمكنني ضبط ملفات تعريف الارتباط لموقعي الإلكتروني App Hosting؟
على الرغم من أنّ عنوان استجابة HTTP Set-Cookie
لم يكن متاحًا عند إطلاق معاينة App Hosting، أصبح يعمل الآن على النحو المتوقّع.
القيود العامة App Hosting وتحديد المشاكل وحلّها
- يمكن أن تتضمّن شبكة توصيل المحتوى (CDN) الخاصة بـ App Hosting مجموعة محدّدة فقط من عناوين الطلبات في مفاتيح التخزين المؤقت. تتضمّن هذه القائمة عناوين
RSC
وNext-Router-State-Tree
وNext-Router-Prefetch
وNext-Router-Segment-Prefetch
وNext-Url
من NextJS، بالإضافة إلى العناوين العادية Accept
وAccept-Encoding
وAccess-Control-Request-Headers
وAccess-Control-Request-Method
وOrigin
وSec-Fetch-Dest
وSec-Fetch-Mode
وSec-Fetch-Site
وX-Goog-Allowed-Resources
وX-Origin
من Cloud CDN. إذا كانت الاستجابة تتضمّن عنوان Vary
بقيمة غير مُدرَجة هنا، لن يخزّنها شبكة توصيل المحتوى مؤقتًا.
- يتم عرض الملفات الثابتة غير المخزَّنة مؤقتًا من Cloud Run، وسيتم تخزينها وعرضها من مصدر App Hosting في إصدار لاحق لتحسين الأداء.
- قد تعرض وحدة تحكّم Firebase بشكل متقطّع رسالة الخطأ "لم يتم العثور على الإصدار وهو غير صالح" عند إنشاء الخلفية.
- تتشارك جميع الخلفيات في المشروع نفسه مؤسسة/حساب GitHub.
ويمكن ربطها بمستودعات مختلفة ضمن تلك المؤسسة أو الحساب.
لإنشاء أنظمة خلفية مرتبطة بحسابات مختلفة على GitHub، ضَعها في مشاريع منفصلة.
القيود المفروضة على تطبيقات Angular وتحديد المشاكل وحلّها
على الرغم من أنّ دعم App Hosting في Angular قيد التطوير والتوسيع حاليًا، إلا أنّه يتضمّن القيود التالية:
- التدويل (I18n): على الرغم من أنّ وظائف التدويل الأساسية تعمل، قد يؤدي الانتقال المباشر إلى صفحات SSR إلى حدوث أخطاء.
- تحديد الموقع الجغرافي: لا تتوفّر إمكانية إنشاء إصدارات لمواقع جغرافية مختلفة.
- أدوات الإنشاء: لا تتوفّر حاليًا سوى "أداة إنشاء التطبيقات".
- البيئات وأدوات Monorepo: ستتعذّر مشاريع Angular التي تستهدف أكثر من تطبيق واحد. للحصول على دعم أكثر اكتمالاً للمستودعات الأحادية، استخدِم Nx.
القيود المفروضة على Next.js وتحديد المشاكل وحلّها
- يتم تلقائيًا إيقاف ميزة تحسين الصور المضمّنة في NextJS على App Hosting ما لم تضبط
images.unoptimized
على false أو تستخدم أداة تحميل صور مخصّصة. اطّلِع على تحسين تحميل الصور على Next.js.
- يتم فك ترميز مسارات عناوين URL التي تحتوي على أحرف مرمّزة بنسبة مئوية من خلال
Cloud Run. قد يؤدي ذلك إلى حدوث مشاكل في الميزات التي تتوقّع مسارات عناوين URL مشفّرة فقط، مثل ميزة "التوجيه المتوازي" في Next.js.
- في الوقت الحالي، يفرض App Hosting قيودًا على التخزين المؤقت لتطبيقات NextJS التي تستخدم البرامج الوسيطة.
بمرور الوقت، من المفترض أن تتحسّن معدّلات الوصول إلى البيانات المخزّنة مؤقتًا.
- يفكّ Cloud Run ترميز مسارات عناوين URL التي تحتوي على أحرف مرمَّزة بنسبة مئوية.
قد يؤدي ذلك إلى حدوث مشاكل في الميزات التي تتوقّع مسارات عناوين URL مرمّزة فقط، مثل
التوجيه المتوازي في Next.js