يمكنك التحكّم بشكل أكبر في علامة Dynamic Links التجارية باستخدام
نطاقك الخاص بدلاً من نطاق فرعي على page.link
. باستخدام النطاقات الخاصة، يمكنك إنشاء
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
الجزء من عنوان URL قبل link-suffix يُسمى بادئة عنوان URL، ويحتوي على كل من نطاق Dynamic Link المخصص وبادئة مسار. عليك تقديم بادئة عنوان URL عند إنشاء Dynamic Links.
يتطلّب إعداد نطاق مخصّص إذن "المحرِّر" أو "المالك" في مشروعك على Firebase.
استخدام نطاق الويب الخاص بك في Dynamic Links
يمكنك استخدام النطاق نفسه لتطبيقك على الويب وصفحات الويب والروابط العامة و"روابط التطبيقات"، ولكن في حال فعلت ذلك، يجب الحرص على أن لا تتعارض عناوين URL لتطبيقك على الويب مع عناوين URL لصفحات الويب. عند ضبط تطبيقك على الويب لاستخدام مقدمة عنوان URL معيّنة، يتم التعامل مع جميع عناوين URL التي تبدأ بهذه البادئة على أنّها تطبيق على الويب، لذا لا يمكنك استخدام عناوين URL التي تحتوي على هذه البادئة للإشارة إلى محتوى عادي مستضاف .
على سبيل المثال، إذا كنت تريد إنشاء Dynamic Link للمورد
https://example.com/my-resource
(صفحة ويب أو رابط عام أو رابط تطبيق)،
لا يمكنك استخدام https://example.com/
كبادئة عنوان URL Dynamic Links، لأنّ ذلك
سيؤدي إلى التعامل مع https://example.com/my-resource
على أنّه Dynamic Link.
بدلاً من ذلك، يجب استخدام بادئة عنوان URL مع نطاق مختلف أو بادئة مسار مختلفة.
لذا، لن تعمل الصيغة الطويلة التالية Dynamic Links (والروابط القصيرة المكافئة) على النحو المطلوب لأنّ عناوين URL التي تحدّدها المَعلمة link
تبدأ ببادئة عنوان URL Dynamic Link ، 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 لا تتعارض مع عناوين URL الخاصة بـ link
:
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. للقيام بذلك:
إذا لم يسبق لك إعداد Firebase Hosting لمشروعك، افتح صفحة Hosting في وحدة تحكّم Firebase، وانقر على البدء، ثم اتّبِع تعليمات الإعداد. ليس عليك إكمال الخطوات المُشار إليها في الوقت الحالي.
افتح صفحة Dynamic Links في وحدة تحكّم Firebase.
إذا لم يسبق لك استخدام Dynamic Links، انقر على البدء. بخلاف ذلك، انقر على إضافة بادئة عنوان URL من القائمة المنسدلة.
وبعد ذلك، أكمل معالج الإعداد، مع تحديد بادئة النطاق والمسار اللذين تريد استخدامهما عندما يُطلب منك ذلك.
أجهزة iOS فقط: في ملف
Info.plist
الخاص بمشروع Xcode، أنشئ مفتاحًا باسمFirebaseDynamicLinksCustomDomains
واضبطه على بادئات عناوين URL Dynamic Links لتطبيقك. على سبيل المثال:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/link</string> <string>https://example.com/promos</string> </array>
إعداد نطاق خاص يدويًا
في بعض الحالات، مثل عندما يكون لديك نطاق مخصّص تم إعداده للخدمة Dynamic Links وتريد إضافة نطاق آخر، أو عند إضافة نطاق مرتبط بموقع إلكتروني على Hosting، عليك إعداد نطاقك المخصّص يدويًا.
لإجراء ذلك:
اربط نطاقك بـ Firebase Hosting إذا لم يسبق لك إجراء ذلك.
يتضمّن إعداد نطاقك باستخدام Firebase Hosting إنشاءملف الإعدادات
firebase.json
فيdirectoryملف المشروع المحلي.تحديث Firebase CLI إلى أحدث إصدار (الإصدار 6.5.0 أو الإصدارات الأحدث)
اضبط موقعك الإلكتروني على Hosting ليكون متوافقًا مع Dynamic Links في ملف
firebase.json
الخاص بمشروعك. إذا كان مشروعك يتضمّن مواقع إلكترونية متعددة، احرص على ضبط الموقع الإلكتروني المرتبط بالنطاق الذي تريد استخدامه.اضبط السمة
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 } ] }
باستخدام الإعدادات أعلاه، يمكنك إنشاء Dynamic Links باستخدام بادئات عناوين URL مثل الأمثلة التالية:
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
يمكنك نشر تغييرات إعدادات Hosting باتّباع الخطوات التالية:
firebase deploy --only hosting
(اختياري) يمكنك التحقّق من محتوى
firebase.json
المنشور باستخدام Hosting REST API.أجهزة iOS فقط: في ملف
Info.plist
الخاص بمشروع Xcode، أنشئ مفتاحًا باسمFirebaseDynamicLinksCustomDomains
واضبطه على بادئات عناوين URL Dynamic Links لتطبيقك. على سبيل المثال:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/promos</string> <string>https://example.com/links/share</string> </array>
ترتيب الأولوية لـ Dynamic Links وHosting
بالنسبة إلى Dynamic Links، يجب أن تكون على دراية بشكل خاص باستضافة ترتيب الأولوية.
- تأكَّد من أنّ بادئة عنوان URL Dynamic Links لا تتعارض مع إعدادات الاستضافة ذات الأولوية الأعلى (على سبيل المثال، يكون للمحتوى الثابت المستضاف الأولوية دائمًا مقارنةً بالمحتوى الذي تمت إعادة كتابته).
- ضمن سمة
rewrites
، سيلتزم ردّ Hosting بالقاعدة المحدّدة من خلال تعبيرsource
glob الأول الذي يُسجّل المسار المطلوب.
على سبيل المثال، إذا أعددت Dynamic Link للسمة
your-domain/source-path/link-suffix
ولكن لديك أيضًا محتوى ثابت على
your-domain/source-path/index.html
، تكون الأولوية للمحتوى الثابت. سيرى المستخدم النهائي index.html
بدلاً من
Dynamic Link. وبالمثل، إذا كان لديك محتوى ثابت على your-domain/source-path/link-suffix
،
سيرى المستخدم النهائي المحتوى الثابت بدلاً من Dynamic Link.
إذا كنت تريد استخدام العلامة التجارية نفسها لكلٍّ من Dynamic Links وHosting، جرِّب أحد الخيارات التالية لبادئة عنوان URL للسمة Dynamic Links:
اضبط سمة
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 } ]