ডায়নামিক লিঙ্কের জন্য একটি কাস্টম ডোমেন সেট আপ করুন

page.link সাবডোমেনের পরিবর্তে আপনার নিজস্ব ডোমেন ব্যবহার করে আপনি আপনার Dynamic Links এর ব্র্যান্ডিং এর উপর আরও বেশি নিয়ন্ত্রণ রাখতে পারেন। কাস্টম ডোমেনের সাহায্যে, আপনি নিম্নলিখিত উদাহরণগুলির মতো Dynamic Links তৈরি করতে পারেন:

https://example.com/link-suffix
https://example.com/links/promos/link-suffix
https://links.example.com/link-suffix
https://ex.amp.le/link-suffix

link-suffix আগে URL-এর অংশটিকে URL প্রিফিক্স বলা হয়, এবং এতে আপনার কাস্টম Dynamic Link ডোমেন এবং একটি পাথ প্রিফিক্স উভয়ই থাকে। Dynamic Links তৈরি করার সময় আপনাকে একটি URL প্রিফিক্স প্রদান করতে হবে।

আপনার Firebase প্রকল্পে একটি কাস্টম ডোমেন সেট আপ করার জন্য সম্পাদক বা মালিকের অনুমতি প্রয়োজন।

Dynamic Links জন্য আপনার ওয়েব ডোমেন ব্যবহার করা

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

উদাহরণস্বরূপ, যদি আপনি https://example.com/my-resource রিসোর্সে (একটি ওয়েব পৃষ্ঠা, ইউনিভার্সাল লিঙ্ক, অথবা অ্যাপ লিঙ্ক) একটি Dynamic Link তৈরি করতে চান, তাহলে আপনি https://example.com/ Dynamic Links URL প্রিফিক্স হিসেবে ব্যবহার করতে পারবেন না, কারণ এটি করলে https://example.com/my-resource Dynamic Link হিসেবে গণ্য করা হবে। পরিবর্তে, আপনাকে একটি ভিন্ন ডোমেন অথবা একটি ভিন্ন পাথ প্রিফিক্স সহ একটি URL প্রিফিক্স ব্যবহার করতে হবে।

সুতরাং, নিম্নলিখিত দীর্ঘ-রূপের Dynamic Links (এবং সমতুল্য ছোট লিঙ্কগুলি) ইচ্ছাকৃতভাবে কাজ করবে না কারণ link প্যারামিটার দ্বারা নির্দিষ্ট করা URL গুলি Dynamic Link URL উপসর্গ, https://example.com/ দিয়ে শুরু হয়:

 https://example.com/?link=https://example.com/my-resource
 https://example.com/?link=https://example.com/resources/my-resource

কিন্তু নিম্নলিখিত দীর্ঘ-রূপের Dynamic Links (এবং সমতুল্য ছোট লিঙ্কগুলি) কাজ করতে পারে, কারণ URL উপসর্গগুলি link URL গুলির সাথে বিরোধ করে না:

 https://link.example.com/?link=https://example.com/my-resource
 https://example.com/links/?link=https://example.com/my-resource
 https://ex.amp.le/?link=https://example.com/my-resource

Firebase কনসোলে একটি কাস্টম ডোমেন সেট আপ করুন

আপনি সাধারণত Firebase কনসোলে সম্পূর্ণরূপে একটি কাস্টম ডোমেন সেট আপ করতে পারেন। এটি করার জন্য:

  1. যদি আপনি আপনার প্রকল্পের জন্য Firebase Hosting সেট আপ না করে থাকেন, তাহলে Firebase কনসোলের Hosting পৃষ্ঠাটি খুলুন, Get Started এ ক্লিক করুন এবং সেটআপ নির্দেশাবলীতে ক্লিক করুন। আপনাকে এই মুহূর্তে নির্দেশিত পদক্ষেপগুলি সম্পূর্ণ করতে হবে না।

  2. Firebase কনসোলের Dynamic Links পৃষ্ঠাটি খুলুন।

  3. যদি আপনি আগে Dynamic Links ব্যবহার না করে থাকেন, তাহলে Get Started এ ক্লিক করুন। অন্যথায়, ড্রপ-ডাউন মেনু থেকে Add URL প্রিফিক্সে ক্লিক করুন।

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

  4. শুধুমাত্র iOS : আপনার Xcode প্রোজেক্টের Info.plist ফাইলে, FirebaseDynamicLinksCustomDomains নামে একটি কী তৈরি করুন এবং এটি আপনার অ্যাপের Dynamic Links URL প্রিফিক্সে সেট করুন। উদাহরণস্বরূপ:

    <key>FirebaseDynamicLinksCustomDomains</key>
    <array>
      <string>https://example.com/link</string>
      <string>https://example.com/promos</string>
    </array>
    

ম্যানুয়ালি একটি কাস্টম ডোমেন সেট আপ করুন

কিছু পরিস্থিতিতে, যেমন যখন আপনার ইতিমধ্যেই Dynamic Links জন্য একটি কাস্টম ডোমেন সেট আপ করা থাকে এবং আপনি অন্য একটি ডোমেন যোগ করতে চান, অথবা যখন আপনি একটি Hosting সাইটের সাথে ইতিমধ্যেই সংযুক্ত একটি ডোমেন যোগ করছেন, তখন আপনাকে আপনার কাস্টম ডোমেন ম্যানুয়ালি সেট আপ করতে হবে।

এটা করার জন্য:

  1. আপনার ডোমেনটি Firebase Hosting এর সাথে সংযুক্ত করুন যদি আপনি ইতিমধ্যে তা না করে থাকেন।

    Firebase Hosting দিয়ে আপনার ডোমেইন সেট আপ করার মধ্যে আপনার স্থানীয় প্রকল্প ডিরেক্টরিতে firebase.json কনফিগারেশন ফাইল তৈরি করা অন্তর্ভুক্ত।

  2. Firebase CLI এর সর্বশেষ সংস্করণে আপডেট করুন (v6.5.0 বা তার পরবর্তী)।

  3. আপনার প্রোজেক্টের firebase.json ফাইলে Dynamic Links জন্য আপনার Hosting সাইট কনফিগার করুন। যদি আপনার প্রোজেক্টে একাধিক সাইট থাকে, তাহলে আপনি যে ডোমেনটি ব্যবহার করতে চান তার সাথে সংযুক্ত সাইটটি কনফিগার করতে ভুলবেন না।

    • appAssociation AUTO তে সেট করুন। এই সেটিং এর মাধ্যমে, Hosting যখন অনুরোধ করা হয় তখন assetlinks.json এবং apple-app-site-association ফাইলগুলি গতিশীলভাবে তৈরি করে।

    • Dynamic Links এর জন্য আপনি যে পাথ প্রিফিক্সগুলি ব্যবহার করতে চান তা নির্দিষ্ট করুন, dynamicLinks true তে সেট করে পুনর্লিখনের নিয়ম সেট করুন। এই পাথগুলির অনুরোধগুলি Dynamic Links এ প্রক্সি করা হয়।

      URL-এর পাথ পুনর্লিখনের নিয়মের বিপরীতে, Dynamic Link পুনর্লিখনের নিয়মগুলিতে নিয়মিত এক্সপ্রেশন থাকতে পারে না।

      আপনার সাইটের জন্য যদি একাধিক পুনর্লিখনের নিয়ম থাকে, তাহলে মনে রাখবেন যে Hosting অনুরোধের সাথে মেলে এমন প্রথম পুনর্লিখনের নিয়মটি কার্যকর করে।

    উদাহরণস্বরূপ:

    "hosting": {
      // ...
      "appAssociation": "AUTO",
      "rewrites": [
        {
          "source": "/promos/**",
          "dynamicLinks": true
        },
        {
          "source": "/links/share/**",
          "dynamicLinks": true
        }
      ]
    }
    

    উপরের কনফিগারেশনের সাহায্যে, আপনি নিম্নলিখিত উদাহরণগুলির মতো URL উপসর্গ সহ Dynamic Links তৈরি করতে পারেন:

    https://your-domain/promos/link-suffix
    https://your-domain/links/share/link-suffix
    

    যদি আপনি এই ডোমেইনটি শুধুমাত্র Dynamic Links এর জন্য ব্যবহার করেন, তাহলে আপনি /** এর একটি সোর্স পাথ ব্যবহার করে কোনও পাথ প্রিফিক্স ছাড়াই Dynamic Links তৈরি করতে পারেন:

    {
      "source": "/**",
      "dynamicLinks": true
    }
    

    উপরের নিয়মটি ব্যবহার করে, আপনি নিম্নলিখিত উদাহরণের মতো Dynamic Links তৈরি করতে পারেন:

    https://your-domain/link-suffix

  4. আপনার Hosting কনফিগারেশন পরিবর্তনগুলি স্থাপন করুন:

    firebase deploy --only hosting

    (ঐচ্ছিক) আপনি Hosting REST API ব্যবহার করে স্থাপন করা firebase.json কন্টেন্ট পরীক্ষা করতে পারেন।

  5. শুধুমাত্র iOS : আপনার Xcode প্রোজেক্টের Info.plist ফাইলে, FirebaseDynamicLinksCustomDomains নামে একটি কী তৈরি করুন এবং এটি আপনার অ্যাপের Dynamic Links URL প্রিফিক্সে সেট করুন। উদাহরণস্বরূপ:

    <key>FirebaseDynamicLinksCustomDomains</key>
    <array>
      <string>https://example.com/promos</string>
      <string>https://example.com/links/share</string>
    </array>
    

Dynamic Links এবং Hosting জন্য অগ্রাধিকার ক্রম

Dynamic Links জন্য, হোস্টিং অগ্রাধিকার ক্রম সম্পর্কে বিশেষভাবে সচেতন থাকুন।

  • নিশ্চিত করুন যে আপনার Dynamic Links URL প্রিফিক্স উচ্চতর অগ্রাধিকার হোস্টিং কনফিগারেশনের সাথে সাংঘর্ষিক নয় (উদাহরণস্বরূপ, হোস্ট করা স্ট্যাটিক কন্টেন্ট সবসময় পুনর্লিখনের চেয়ে অগ্রাধিকার পায়)।
  • rewrites বৈশিষ্ট্যের মধ্যে, Hosting প্রতিক্রিয়াটি অনুরোধকৃত পথটি ক্যাপচার করে এমন প্রথম source গ্লোব দ্বারা নির্দিষ্ট নিয়ম মেনে চলবে।

উদাহরণস্বরূপ, যদি আপনি your-domain / source-path / link-suffix এর জন্য একটি Dynamic Link সেট আপ করেন কিন্তু আপনার your-domain / source-path /index.html এ স্ট্যাটিক কন্টেন্ট থাকে, তাহলে স্ট্যাটিক কন্টেন্টটি প্রাধান্য পাবে। একজন এন্ড-ইউজার Dynamic Link এর পরিবর্তে index.html দেখতে পাবেন। একইভাবে, যদি আপনার your-domain / source-path / link-suffix এ স্ট্যাটিক কন্টেন্ট থাকে, তাহলে এন্ড-ইউজার Dynamic Link এর পরিবর্তে স্ট্যাটিক কন্টেন্ট দেখতে পাবেন।

যদি আপনি Dynamic Links এবং Hosting উভয়ের জন্য একই ব্র্যান্ডিং ব্যবহার করতে চান, তাহলে আপনার Dynamic Links URL প্রিফিক্সের জন্য নিম্নলিখিত বিকল্পগুলির মধ্যে একটি বিবেচনা করুন:

  • আপনার source অ্যাট্রিবিউটটি একটি পাথ প্রিফিক্সের সাথে মেলে সেট করুন। উদাহরণস্বরূপ, যদি আপনার example.com এর একটি কাস্টম ডোমেন থাকে, তাহলে আপনার পুনর্লিখনের নিয়মটি হতে পারে:

    // Domain is example.com
    "rewrites": [ {
      "source": "/links/**",  // Dynamic Links start with "https://example.com/links/"
      "dynamicLinks": true
    } ]
    
  • Dynamic Links এর জন্য একটি সাবডোমেন সেট আপ করুন, তারপর সেই সাবডোমেনের সাথে মেলে আপনার source অ্যাট্রিবিউট সেট করুন। উদাহরণস্বরূপ, যদি আপনার links.example.com এর একটি সাবডোমেন থাকে, তাহলে আপনার পুনর্লিখনের নিয়মটি হতে পারে:

    // Domain is links.example.com
    "rewrites": [ {
      "source": "/**",  // Dynamic Links start with "https://links.example.com/"
      "dynamicLinks": true
    } ]