Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

একাধিক সাইট জুড়ে প্রকল্পের সংস্থান ভাগ করুন

আপনি একটি একক Firebase প্রকল্পে এক বা একাধিক Firebase হোস্টিং সাইট সেট আপ করতে পারেন। যেহেতু সাইটগুলি একই ফায়ারবেস প্রকল্পে রয়েছে, তাই সমস্ত সাইট প্রকল্পের অন্যান্য ফায়ারবেস সংস্থানগুলি অ্যাক্সেস করতে পারে।

একই ফায়ারবেস প্রকল্পের মধ্যে একাধিক হোস্টিং সাইট স্থাপন করে, আপনি আরো সহজেই সংশ্লিষ্ট সাইট এবং অ্যাপের মধ্যে ফায়ারবেস রিসোর্স শেয়ার করতে পারেন। উদাহরণস্বরূপ, আপনি যদি একই ফায়ারবেস প্রকল্পে আপনার ব্লগ, অ্যাডমিন প্যানেল এবং পাবলিক অ্যাপকে পৃথক সাইট হিসাবে সেট আপ করেন, তারা সবাই একই ফায়ারবেস প্রমাণীকরণ ব্যবহারকারী ডাটাবেস শেয়ার করতে পারে, একই সাথে তাদের নিজস্ব ডোমেন বা বিষয়বস্তুও থাকতে পারে।

পদক্ষেপ 1: আপনার Firebase CLI সংস্করণ আপডেটটিতে

অ্যাক্সেস সাম্প্রতিকতম Firebase দ্বারা বৈশিষ্ট্য হোস্টিং Firebase CLI এর সর্বশেষ সংস্করণে আপডেট

পদক্ষেপ 2: অতিরিক্ত বিজ্ঞাপন জুড়ুন

নিম্নলিখিত পদ্ধতিগুলির মধ্যে একটি ব্যবহার করে একটি Firebase প্রকল্পে অতিরিক্ত সাইট যুক্ত করুন:

  • মধ্যে কর্মপ্রবাহ ব্যবহার করুন হোস্টিং পৃষ্ঠা Firebase কনসোলের

  • Firebase CLI কমান্ড ব্যবহার করুন: firebase hosting:sites:create SITE_ID

  • হোস্টিং REST API ব্যবহার: projects.sites.create

এই পদ্ধতি প্রতিটি, আপনি একটি উল্লেখ করব SITE_ID যা সাইটের জন্য Firebase প্রভিশনড ডিফল্ট সাবডোমেন গঠনে ব্যবহৃত হয়:

  • SITE_ID .web.app
  • SITE_ID .firebaseapp.com

কারণ SITE_ID এই URL গুলি ব্যবহার করা হয়, সাইট আইডি নিম্নলিখিত প্রয়োজনীয়তা আছে:

  • একটি বৈধ হোস্টনাম ট্যাগ হওয়া আবশ্যক, যার অর্থ এটি থাকতে পারে না . , _ ইত্যাদি
  • 30 অক্ষর বা তার কম হতে হবে
  • ফায়ারবেসে বিশ্বব্যাপী অনন্য হতে হবে

প্রতিটি সাইটের জন্য, আপনি বিকল্প হিসাবে পারেন কাস্টম ডোমেন যুক্ত একাধিক URL গুলিতে একই বিষয়বস্তু ও কনফিগারেশন পরিবেশন করা।

একটি সেকেন্ডারি সাইট মুছে দিন

নিম্নলিখিত পদ্ধতিগুলির মধ্যে একটি ব্যবহার করে একটি Firebase প্রকল্প থেকে অবাঞ্ছিত সাইটগুলি মুছুন:

  • মধ্যে কর্মপ্রবাহ ব্যবহার করুন হোস্টিং পৃষ্ঠা Firebase কনসোলের

  • Firebase CLI কমান্ড ব্যবহার করুন: firebase hosting:sites:delete SITE_ID

  • হোস্টিং REST API ব্যবহার: projects.sites.delete

নোট আপনাকে ডিফল্ট সাইট, যা একই হয়েছে মুছে ফেলতে পারবেন না যে SITE_ID আপনার Firebase প্রকল্পের ID এর মতো।

ধাপ 3: আপনার সাইট এর জন্য স্থাপন লক্ষ্যমাত্রা সেট আপ করুন

যখন আপনার একাধিক সাইট থাকে এবং আপনি Firebase CLI স্থাপনার কমান্ডগুলি চালান, তখন CLI কে যোগাযোগ করার একটি উপায় প্রয়োজন যে কোন সেটিংস প্রতিটি সাইটে স্থাপন করা উচিত। সঙ্গে প্রয়োগের লক্ষ্যমাত্রা আপনাকে আলাদা করে একটি একটি নির্দিষ্ট সাইটের চিহ্নিত করতে পারেন TARGET_NAME আপনার firebase.json কনফিগারেশন ফাইল এবং আপনার মধ্যে Firebase CLI কমান্ড পরীক্ষা করুন অথবা আপনার সাইটগুলি মোতায়েন জন্য।

একটি প্রয়োগের লক্ষ্য তৈরি এবং প্রয়োগ করতে TARGET_NAME একটি হোস্টিং সাইট থেকে, আপনার প্রকল্পের ডিরেক্টরি রুট থেকে নিম্নোক্ত CLI কমান্ড সঞ্চালন করুন:

firebase target:apply hosting TARGET_NAME RESOURCE_IDENTIFIER

প্যারামিটারগুলি কোথায়:

  • TARGET_NAME - একটি অনন্য নাম (যে আপনি নিজেকে সংজ্ঞায়িত করেছি) হোস্টিং আপনি যে সাইটে মোতায়েন সেটির

  • RESOURCE_IDENTIFIER - SITE_ID হোস্টিং সাইট আপনার Firebase প্রকল্পে তালিকাভুক্ত হিসেবে

উদাহরণস্বরূপ, যদি আপনি দুই সাইট (তৈরি করেছি myapp-blog এবং myapp-app আপনার Firebase প্রকল্পে), আপনি একটি অনন্য প্রয়োগ হতে পারে TARGET_NAME ( blog এবং app , যথাক্রমে) প্রতিটি সাইটের থেকে নিম্নলিখিত কমান্ড ব্যবহার:

firebase target:apply hosting blog myapp-blog
firebase target:apply hosting app myapp-app

প্রয়োগের লক্ষ্যমাত্রা জন্য সেটিংস সংরক্ষিত হয় .firebaserc , আপনার প্রকল্পের ডিরেক্টরির মধ্যে ফাইল যাতে আপনি শুধুমাত্র প্রয়োগের লক্ষ্যমাত্রা প্রকল্পের প্রতি এক সময় সেট করতে হবে।

ধাপ 4: প্রতিটি সাইটের জন্য হোস্টিং কনফিগারেশন নির্ধারণ

একটি সাইটের ফলিত ব্যবহার করুন TARGET_NAME যখন আপনি আপনার তার হোস্টিং কনফিগারেশন সংজ্ঞায়িত করছি firebase.json ফাইল।

  • আপনার যদি firebase.json ফাইলটিতে একাধিক সাইটের জন্য কনফিগারেশন সংজ্ঞায়িত, একটি বিন্যাস বিন্যাস ব্যবহার করুন:

    {
      "hosting": [ {
          "target": "blog",  // "blog" is the applied TARGET_NAME for the Hosting site "myapp-blog"
          "public": "blog/dist",  // contents of this folder are deployed to the site "myapp-blog"
    
          // ...
        },
        {
          "target": "app",  // "app" is the applied TARGET_NAME for the Hosting site "myapp-app"
          "public": "app/dist",  // contents of this folder are deployed to the site "myapp-app"
    
          // ...
    
          "rewrites": [...]  // You can define specific Hosting configurations for each site
        }
      ]
    }
    
  • আপনার যদি firebase.json ফাইলটি শুধুমাত্র একটি সাইট এর কনফিগারেশন সংজ্ঞায়িত, এটি একটি অ্যারে ফর্ম্যাট ব্যবহার করার প্রয়োজন নেই আছে:

    {
      "hosting": {
          "target": "blog",
          "public": "dist",
    
          // ...
    
          "rewrites": [...]
      }
    }
    

পদক্ষেপ 5: টেস্ট স্থানীয়ভাবে, প্রিভিউ, পরিবর্তন এবং আপনার সাইটগুলি প্রয়োগের

আপনার স্থানীয় প্রজেক্ট ডিরেক্টরির রুট থেকে নিচের যেকোনো কমান্ড চালান।

কমান্ড বর্ণনা
firebase emulators:start --only hosting একটি স্থানীয়ভাবে আয়োজিত URL- এ হোস্টিং বিষয়বস্তু এবং ডিফল্ট হোস্টিং সাইটের কনফিগারেশন অনুকরণ
firebase emulators:start --only hosting: TARGET_NAME স্থানীয়ভাবে হোস্ট করা URL- এ নির্দিষ্ট হোস্টিং সাইটের হোস্টিং বিষয়বস্তু এবং কনফিগারেশন অনুকরণ করে
firebase hosting:channel:deploy \
CHANNEL_ID
একটি প্রাকদর্শন URL- এ হোস্টিং বিষয়বস্তু এবং ডিফল্ট হোস্টিং সাইটের কনফিগারেশন স্থাপন
firebase hosting:channel:deploy \
CHANNEL_ID --only TARGET_NAME
একটি পূর্বরূপ URL- এ নির্দিষ্ট হোস্টিং সাইটের হোস্টিং সামগ্রী এবং কনফিগারেশন স্থাপন করে
firebase deploy --only hosting কনফিগার সব হোস্টিং সাইট লাইভ চ্যানেলে হোস্টিং বিষয়বস্তু ও কনফিগারেশন স্থাপন firebase.json
firebase deploy --only hosting: TARGET_NAME নির্দিষ্ট হোস্টিং সাইটের লাইভ চ্যানেলে হোস্টিং সামগ্রী এবং কনফিগারেশন স্থাপন করে
কমান্ড বর্ণনা
(প্রস্তাবিত নয়; ব্যবহার emulators:start পরিবর্তে)
firebase serve --only hosting
একটি স্থানীয়ভাবে আয়োজিত URL- এ হোস্টিং বিষয়বস্তু এবং ডিফল্ট হোস্টিং সাইটের কনফিগারেশন কাজ করে
(প্রস্তাবিত নয়; ব্যবহার emulators:start পরিবর্তে)
firebase serve --only hosting: TARGET_NAME
স্থানীয়ভাবে হোস্ট করা URL- এ নির্দিষ্ট হোস্টিং সাইটের হোস্টিং বিষয়বস্তু এবং কনফিগারেশন পরিবেশন করে