تقدّم هذه الصفحة إجابات عن الأسئلة الشائعة حول App Hosting.
App Hosting الأسئلة الشائعة
هل تتيح App Hosting استخدام إطارات عمل أخرى غير Next.js وAngular؟
يوفّر App Hosting دعمًا مُعدًّا مسبقًا للإنشاء والنشر باستخدام IDE Next.js وAngular، حيث التزمنا بفهم IDE هذه الأطر وتفسير إعداداتها الأصلية. بالنسبة إلى عدد من أطر العمل الأخرى، يقدّم منتدى المطوّرين دعمًا App Hosting لمحوِّلات أطر العمل. بالإضافة إلى ذلك، بالنسبة إلى أي تطبيق Node.js يتضمّن نص إنشاء وبدء، سيحاول App Hosting إنشاءات، ولكن لا يمكنه ضمان النجاح بشكل موثوق. اطّلِع على دمج التنسيق.
ما هي المناطق التي تتوفّر فيها خدمة Firebase App Hosting؟
من المرجّح أن نوسّع نطاق المناطق التي تتوفّر فيها ميزة "App Hosting" بمرور الوقت. يمكنك الاطّلاع على مواقع App Hosting لمعرفة أحدث المعلومات.
هل يمكنني استخدام GitLab أو موفّري Git آخرين غير GitHub لإجراء عمليات النشر؟
لا يمكنك حاليًا إجراء ذلك، ولكن من المخطّط أن يتوفّر هذا الخيار في المستقبل الطويل ضمن خارطة الطريق لتطبيق App Hosting.
Why can't I find my repository in the Firebase console UI?
إذا لم يظهر مستودعك في قائمة الخيارات عند إنشاء خلفية جديدة في "وحدة تحكّم Firebase"، جرِّب أولاً اختيار إعادة تحميل القائمة. إذا كان المستودع المفضّل لا يزال غير متاح، قد تحتاج إلى إضافته باستخدام خيار منح الإذن بالوصول إلى مستودع جديد في GitHub.
بالإضافة إلى ذلك، يمكنك إدارة المستودعات باستخدام Firebase App Hosting تطبيق GitHub. لإجراء ذلك، انتقِل إلى ملفك الشخصي على GitHub، ثم انقر على الإعدادات ثم التطبيقات. في الصف لتطبيق Firebase App Hosting في الجدول، انقر على إعداد لإدارة المستودعات.
كيف يمكنني تغيير المستودع المرتبط بمشروعي على App Hosting؟
لا يمكن حاليًا تغيير المستودع. ومع ذلك، يمكنك إنشاء خلفية جديدة مرتبطة بالمستودع المفضّل ضمن المشروع نفسه، أو إنشاء خلفية جديدة في مشروع منفصل.
كيف يمكنني ضبط الرؤوس لموقعي الإلكتروني على App Hosting؟
تعتمد العناوين على إطار العمل. اتّبِع الخطوات المعتادة لإعداد إطار العمل.
هل هناك محاكي لتطوير التطبيقات على الجهاز باستخدام App Hosting؟
نعم، يمكنك إجراء اختبارات على تطبيقك محليًا قبل App Hosting نشره باستخدام محاكي App Hosting، وهو جزء من App Hosting مجموعة أدوات المحاكاة المحلية لمنصة Firebase. اطّلِع على اختبار عملية نشر تطبيقك محليًا .
لماذا تظهر لي أخطاء في App Hosting ولكن ليس في Cloud Build؟
في هذه الحالات، من المحتمل أن يكون الخطأ قد حدث في Cloud Run. يُرجى التحقّق من حالة الطرح للتأكّد من ذلك.
كيف يمكنني تغيير حساب GitHub مرتبط أو إزالته؟
لإزالة حساب GitHub المرتبط، افتح Developer
Connect وتأكَّد من اختيار مشروعك، ثم احذف عملية الربط
firebase-app-hosting-github-oath
وعملية الربط
التي تبدأ بالرمز apphosting-github-conn-
. عند
فتح App Hosting في وحدة تحكّم Firebase، من المفترض أن تتمكّن الآن
من إعداد عملية ربط جديدة بخدمة GitHub.
كيف يمكنني ضبط ملفات تعريف الارتباط لموقعي الإلكتروني على App Hosting؟
على الرغم من أنّه لم يكن متاحًا عند إطلاق معاينة App Hosting، يعمل الآن عنوان استجابة HTTP
Set-Cookie
على النحو المتوقّع.
القيود العامة المفروضة على App Hosting وتحديد المشاكل وحلّها
- تم تعديل رؤوس Cache-Control لتقييد ذاكرة التخزين المؤقت لشبكة توصيل المحتوى (CDN) على 60 دقيقة، وسيتم إزالة هذا القيد بعد فترة قصيرة من إطلاق المنتج للجميع.
- لا يمكن أن تتضمّن شبكة 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
بقيمة غير مُدرَجة هنا، لن تخزِّنه شبكة CDN. - يتم عرض الملفات الثابتة غير المخزّنة مؤقتًا من Cloud Run. وفي الإصدار اللاحق، سيتم تخزينها وعرضها من مصدر App Hosting لتحقيق أداء أفضل.
- قد تعرض وحدة تحكّم Firebase بشكل متقطع خطأ "لم يتم العثور على الإصدار وهو غير صالح" عند إنشاء الخلفية.
- تشترك جميع الخلفيات في المشروع نفسه في مؤسسة/حساب على GitHub. ويمكن ربطها بمستودعات مختلفة ضمن هذه المؤسسة/هذا الحساب. لإنشاء خدمات خلفية مرتبطة بحسابات مختلفة على GitHub، ضعها في مشاريع منفصلة.
قيود تطبيق Angular وتحديد المشاكل وحلّها
على الرغم من أنّ App Hosting قيد التطوير والتوسّع بشكل نشط لاستخدام Angular، إلا أنّه يتضمّن القيود التالية:
- I18n: على الرغم من أنّ وظائف 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