page.link
alt alan adı yerine kendi alanınızı kullanarak Dynamic Links'teki marka bilinci oluşturma çalışmalarınız üzerinde daha fazla kontrol sahibi olabilirsiniz. Özel alanlarla aşağıdaki örnekler gibi Dinamik Bağlantılar oluşturabilirsiniz:
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'nin link-suffix tarihinden önceki bölümüne URL ön eki denir ve hem özel Dinamik Bağlantı alan adınızı hem de yol ön ekinizi içerir. Dinamik Bağlantılar oluştururken bir URL öneki sağlamanız gerekir.
Özel alan oluşturmak için Firebase projenizde Düzenleyici veya Sahip izni gerekir.
Dinamik Bağlantılar için web alan adınızı kullanma
Dinamik Bağlantılar ve web sayfalarınız, Evrensel Bağlantılarınız ve Uygulama Bağlantılarınız için aynı alan adını kullanabilirsiniz. Ancak bunu yaparsanız Dinamik Bağlantı URL'lerinizin web URL'lerinizle çakışmayacağından emin olmanız gerekir. Dinamik Bağlantılar'ı belirli bir URL ön eki kullanacak şekilde yapılandırdığınızda, bu önekle başlayan tüm URL'ler Dinamik Bağlantılar olarak ele alınır. Dolayısıyla bu önekli URL'leri sıradan barındırılan içeriğe işaret eden URL'ler olarak kullanamazsınız.
Örneğin, https://example.com/my-resource
kaynağı (bir web sayfası, Geçiş Bağlantısı veya Uygulama Bağlantısı) için Dinamik Bağlantı oluşturmak isterseniz Dynamic Links URL ön eki olarak https://example.com/
URL'sini kullanamazsınız. Bunun nedeni, bu durumda https://example.com/my-resource
öğesinin Dinamik Bağlantı olarak değerlendirilmesine yol açar.
Bunun yerine, farklı alan adına veya farklı yol ön ekine sahip bir URL öneki kullanmanız gerekir.
Bu nedenle, link
parametresi tarafından belirtilen URL'ler Dinamik Bağlantı URL'si önekiyle (https://example.com/
) başladığından aşağıdaki uzun biçimli Dinamik Bağlantılar (ve eşdeğer kısa bağlantılar) amaçlandığı gibi çalışmaz:
https://example.com/?link=https://example.com/my-resource https://example.com/?link=https://example.com/resources/my-resource
Ancak URL önekleri link
URL'leriyle çakışmadığından aşağıdaki uzun biçimli Dynamic Links (ve eşdeğer kısa bağlantılar) çalışabilir:
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 konsolunda özel alan ayarlama
Genellikle Firebase konsolunda tamamen özel bir alan oluşturabilirsiniz. Bunu yapmak için:
Projeniz için Firebase Hosting'i kurmadıysanız Firebase konsolunun Barındırma sayfasını açın, Başlayın'ı tıklayın ve kurulum talimatlarını tıklayın. Belirtilen adımları şu anda tamamlamanız gerekmiyor.
Firebase konsolunun Dinamik Bağlantılar sayfasını açın.
Dynamic Links'i daha önce kullanmadıysanız Başlayın'ı tıklayın. Aksi takdirde, açılır menüden URL öneki ekle'yi tıklayın.
Ardından, istendiğinde kullanmak istediğiniz alan adını ve yol ön ekini belirterek kurulum sihirbazını tamamlayın.
Yalnızca iOS: Xcode projenizin
Info.plist
dosyasındaFirebaseDynamicLinksCustomDomains
adında bir anahtar oluşturun ve bunu uygulamanızın Dynamic Links URL'si ön eklerine ayarlayın. Örnek:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/link</string> <string>https://example.com/promos</string> </array>
Manuel olarak özel alan oluşturma
Dinamik Bağlantılar için ayarlanmış özel bir alanınız olduğu halde başka bir alan eklemek istediğinizde veya bir Hosting sitesine zaten bağlı olan bir alan eklerken özel alanınızı manuel olarak oluşturmanız gerekebilir.
Bunu yapmak için:
Henüz yapmadıysanız alanınızı Firebase Hosting'e bağlayın.
Alanınızı Firebase Hosting ile ayarlamak, yerel proje dizininizde
firebase.json
yapılandırma dosyasını oluşturmayı içerir.Firebase CLI'ı en son sürümüne güncelleyin (v6.5.0 veya sonraki bir sürüm).
Projenizin
firebase.json
dosyasında Dynamic Links için Hosting sitenizi yapılandırın. Projenizde birden fazla site varsa siteyi kullanmak istediğiniz alana bağlı olarak yapılandırdığınızdan emin olun.appAssociation
değeriniAUTO
olarak ayarlayın. Bu ayar kullanıldığında, Hosting,assetlinks.json
veapple-app-site-association
dosyalarını istendiğinde dinamik olarak oluşturur.dynamicLinks
ile yeniden yazma kurallarınıtrue
olarak ayarlayarak Dynamic Links için kullanmak istediğiniz yol öneklerini belirtin. Bu yollara yönelik istekler, Dynamic Links'e proxy üzerinden gönderilir.URL'lere giden yolları yeniden yazan kuralların aksine, Dinamik Bağlantı yeniden yazma kuralları normal ifadeler içeremez.
Siteniz için birden fazla yeniden yazma kuralınız varsa Barındırma'nın istekle eşleşen ilk yeniden yazma kuralını yürüttüğünü unutmayın.
Örnek:
"hosting": { // ... "appAssociation": "AUTO", "rewrites": [ { "source": "/promos/**", "dynamicLinks": true }, { "source": "/links/share/**", "dynamicLinks": true } ] }
Yukarıdaki yapılandırmayla, aşağıdaki örnekler gibi URL ön eklerine sahip Dinamik Bağlantılar oluşturabilirsiniz:
https://your-domain/promos/link-suffix https://your-domain/links/share/link-suffix
Bu alan adını yalnızca Dinamik Bağlantılar için kullanıyorsanız yol ön eki olmadan Dinamik Bağlantılar oluşturmak için
/**
kaynak yolunu kullanabilirsiniz:{ "source": "/**", "dynamicLinks": true }
Yukarıdaki kuralla aşağıdaki örnek gibi Dynamic Links oluşturabilirsiniz:
https://your-domain/link-suffix
Hosting yapılandırma değişikliklerinizi dağıtın:
firebase deploy --only hosting
(İsteğe bağlı) Dağıtılan
firebase.json
içeriğini Hosting REST API'yi kullanarak kontrol edebilirsiniz.Yalnızca iOS: Xcode projenizin
Info.plist
dosyasındaFirebaseDynamicLinksCustomDomains
adında bir anahtar oluşturun ve bunu uygulamanızın Dynamic Links URL'si ön eklerine ayarlayın. Örnek:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/promos</string> <string>https://example.com/links/share</string> </array>
Dinamik Bağlantılar ve Barındırma için öncelik sırası
Dynamic Links için özellikle barındırma öncelik sırasına dikkat edin.
- Dynamic Links URL ön ekinizin daha yüksek öncelikli barındırma yapılandırmalarıyla çakışmadığından emin olun (örneğin, barındırılan statik içerik her zaman yeniden yazma işlemine göre önceliklidir).
rewrites
özelliği içinde, Hosting yanıtı, istenen yolu yakalayan ilksource
glob'u tarafından belirtilen kurala uyar.
Örneğin, your-domain/source-path/link-suffix
için Dinamik Bağlantı oluşturduysanız ancak your-domain/source-path/index.html
adresinde de statik içeriğiniz varsa statik içeriğe öncelik verilir. Son kullanıcı, Dinamik Bağlantı yerine index.html
adını görür. Benzer şekilde, your-domain/source-path/link-suffix
adresinde statik içeriğiniz varsa son kullanıcı Dinamik Bağlantı yerine statik içeriği görür.
Hem Dynamic Links URL hem de Hosting için aynı markalamayı kullanmak istiyorsanız Dynamic Links URL ön ekiniz için aşağıdaki seçeneklerden birini değerlendirin:
source
özelliğinizi bir yol önekiyle eşleşecek şekilde ayarlayın. Örneğin,example.com
şeklinde özel bir alanınız varsa yeniden yazma kuralınız şöyle olabilir:// Domain is example.com "rewrites": [ { "source": "/links/**", // Dynamic Links start with "https://example.com/links/" "dynamicLinks": true } ]
Dynamic Links için kullanılacak bir alt alan adı ayarlayın, ardından
source
özelliğinizi bu alt alan adıyla eşleşecek şekilde ayarlayın. Örneğin,links.example.com
alt alan adınız varsa yeniden yazma kuralınız şu şekilde olabilir:// Domain is links.example.com "rewrites": [ { "source": "/**", // Dynamic Links start with "https://links.example.com/" "dynamicLinks": true } ]