अक्सर पूछे जाने वाले सवाल और समस्या का हल

इस पेज पर, App Hosting के बारे में अक्सर पूछे जाने वाले सवालों के जवाब दिए गए हैं.

App Hosting अक्सर पूछे जाने वाले सवाल

App Hosting से जुड़ी सामान्य सीमाएं और समस्याएं हल करना

  • Cloud Run के इन्फ़्रास्ट्रक्चर में समस्या की वजह से, कुछ इलाकों में संसाधनों को बनाने या अपडेट करने में उम्मीद से ज़्यादा समय लग सकता है. जैसे, us-central1. अगर किसी क्षेत्र में डिप्लॉयमेंट में देरी हो रही है, तो Google का सुझाव है कि आप किसी दूसरे क्षेत्र में डिप्लॉय करें.
  • App Hosting का सीडीएन, अपनी कैश मेमोरी की कुंजियों में अनुरोध के हेडर का सिर्फ़ एक खास सेट शामिल कर सकता है. इस सूची में NextJS के RSC, Next-Router-State-Tree, Next-Router-Prefetch, Next-Router-Segment-Prefetch, और Next-Url हेडर शामिल हैं. साथ ही, इसमें Cloud CDN के स्टैंडर्ड 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 हेडर भी शामिल हैं. अगर किसी जवाब में ऐसा Vary हेडर शामिल है जिसकी वैल्यू यहां नहीं दी गई है, तो हमारा सीडीएन उसे कैश मेमोरी में सेव नहीं करेगा.
  • कैश नहीं की गई स्टैटिक फ़ाइलें, Cloud Run से डिलीवर की जाती हैं. बाद के रिलीज़ में, इन्हें App Hosting ऑरिजिन से सेव और डिलीवर किया जाएगा, ताकि परफ़ॉर्मेंस बेहतर हो सके.
  • Firebase कंसोल, बैकएंड क्रिएशन पर "बिल्ड नहीं मिला और यह अमान्य है" गड़बड़ी को कुछ समय के लिए दिखा सकता है.
  • एक ही प्रोजेक्ट में मौजूद सभी बैकएंड, GitHub संगठन/खाते को शेयर करते हैं. इन्हें उस संगठन/खाते के अलग-अलग रिपॉज़िटरी से कनेक्ट किया जा सकता है. अलग-अलग GitHub खातों से कनेक्ट किए गए बैकएंड बनाने के लिए, उन्हें अलग-अलग प्रोजेक्ट में रखें.

Angular ऐप्लिकेशन से जुड़ी सीमाएं और समस्याएं हल करना

हालांकि, App Hosting के लिए Angular का इस्तेमाल करने की सुविधा पर अब भी काम चल रहा है और इसे बढ़ाया जा रहा है. हालांकि, इसकी कुछ सीमाएं हैं:

  • I18n: I18n की मुख्य सुविधा काम करती है. हालांकि, सीधे तौर पर SSR पेजों पर जाने से गड़बड़ियां हो सकती हैं.
  • स्थानीय भाषा में उपलब्ध कराना: अलग-अलग भाषाओं के लिए वर्शन बनाने की सुविधा उपलब्ध नहीं है.
  • बिल्डर: फ़िलहाल, सिर्फ़ ऐप्लिकेशन बिल्डर का इस्तेमाल किया जा सकता है.
  • एनवायरमेंट और Monorepo टूलिंग: एक से ज़्यादा ऐप्लिकेशन टारगेट वाले Angular प्रोजेक्ट काम नहीं करेंगे. मोनोरिपो के लिए, Nx का इस्तेमाल करें.

Angular SSR में एचटीटीपी 400 गड़बड़ियां और प्रॉक्सी पर भरोसा करना

अगर Firebase App Hosting पर डिप्लॉय किए गए आपके Angular ऐप्लिकेशन में, HTTP 400 (गलत अनुरोध) गड़बड़ियां, होस्ट की पुष्टि करने वाले ब्लॉकर या प्रॉक्सी ट्रस्ट से जुड़ी गड़बड़ियां आती हैं, तो अपने Angular वर्शन के लिए सुझाया गया समाधान अपनाएं:

  • Angular v19, v20, और v21: एचटीटीपी 400 गड़बड़ियों को ठीक करने के लिए, आपके पास दो तरीके हैं:
    • डिपेंडेंसी अपग्रेड करें: अपने मौजूदा Angular वर्शन के लिए, सबसे नया पैच रिलीज़ इंस्टॉल करने के लिए npm update @angular/core @angular/ssr चलाएं.
    • मैन्युअल कॉन्फ़िगरेशन: कोड-लेवल पर कॉन्फ़िगरेशन फ़ॉलबैक लागू करने के लिए, अपने सर्वर कॉन्फ़िगरेशन में trustProxyHeaders: true सेट करें. इसके लिए, Angular के दस्तावेज़ में भरोसेमंद प्रॉक्सी हेडर कॉन्फ़िगर करना लेख पढ़ें.
  • Angular v22: नए बैकएंड पर पहली बार बिल्ड करने पर, 400 गड़बड़ियां दिख सकती हैं. इस समस्या को हल करने के लिए, दूसरा बिल्ड जनरेट करें. इसके बाद की सभी बिल्ड, उम्मीद के मुताबिक काम करनी चाहिए.

Next.js की सीमाएं और समस्या हल करना