page.link
alt alan adı yerine kendi alan adınızı kullanarak Dynamic Links markanız üzerinde daha fazla kontrol sahibi olabilirsiniz. Özel alan adlarıyla aşağıdaki örneklere benzer Dynamic Links 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'ten önceki bölümüne URL ön eki denir. Bu bölüm hem özel Dynamic Link alanınızı hem de bir yol ön ekini içerir. Dynamic Links oluştururken bir URL ön eki sağlamanız gerekir.
Özel alan oluşturmak için Firebase projenizde Düzenleyici veya Sahip izni gerekir.
Dynamic Links için web alanınızı kullanma
Dynamic Links ve web sayfalarınız, Evrensel Bağlantılar ve Uygulama Bağlantıları için aynı alanı kullanabilirsiniz. Ancak bunu yaparsanız Dynamic Link URL'lerinizin web URL'lerinizle çakışmadığından emin olmanız gerekir. Dynamic Links'ü belirli bir URL ön ekiyle kullanacak şekilde yapılandırdığınızda, bu ön ek ile başlayan tüm URL'ler Dynamic Links olarak değerlendirilir. Bu nedenle, bu ön eke sahip URL'leri sıradan barındırılan içeriğe yönlendirmek için kullanamazsınız.
Örneğin, https://example.com/my-resource
kaynağına (web sayfası, geçiş bağlantısı veya uygulama bağlantısı) Dynamic Link oluşturmak istiyorsanız Dynamic Links URL ön eki olarak https://example.com/
kullanamazsınız. Aksi takdirde https://example.com/my-resource
, Dynamic Link olarak değerlendirilir.
Bunun yerine, farklı bir alan adı veya farklı bir yol öneki içeren bir URL öneki kullanmanız gerekir.
Bu nedenle, link
parametresi tarafından belirtilen URL'ler Dynamic Link URL ön ekiyle (https://example.com/
) başladığından aşağıdaki uzun biçimli Dynamic Links (ve eşdeğer kısa bağlantılar) beklendiği gibi çalışmaz:
https://example.com/?link=https://example.com/my-resource https://example.com/?link=https://example.com/resources/my-resource
Ancak URL ön ekleri link
URL'leriyle çakışmadığı için aşağıdaki uzun Dynamic Links (ve eşdeğer kısa bağlantılar) işe yarayabilir:
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 oluşturma
Genellikle özel bir alanı tamamen Firebase konsolunda oluşturabilirsiniz. Bunu yapmak için:
Projeniz için Firebase Hosting'ü ayarlamadıysanız Firebase konsolunun Hosting sayfasını açın, Başlayın'ı ve ardından kurulum talimatlarını tıklayın. Şu anda belirtilen adımları tamamlamanız gerekmez.
Firebase konsolunun Dynamic Links sayfasını açın.
Dynamic Links'ü daha önce kullanmadıysanız Başlayın'ı tıklayın. Aksi takdirde, açılır menüden URL ön eki ekle'yi tıklayın.
Ardından, istendiğinde kullanmak istediğiniz alanı ve yol ön ekini belirterek kurulum sihirbazını tamamlayın.
Yalnızca iOS: Xcode projenizin
Info.plist
dosyasındaFirebaseDynamicLinksCustomDomains
adlı bir anahtar oluşturun ve bu anahtarı uygulamanızın Dynamic Links URL ön eklerine ayarlayın. Örneğin:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/link</string> <string>https://example.com/promos</string> </array>
Özel alan adlarını manuel olarak ayarlama
Dynamic Links için zaten özel alanınız varsa ve başka bir alan eklemek istiyorsanız ya da Hosting sitesine bağlı bir alanı eklerken özel alanınızı manuel olarak ayarlamanız gerekir.
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 KSA'yı en son sürümüne güncelleyin (v6.5.0 veya sonraki sürümler).
Projenizin
firebase.json
dosyasında Hosting sitenizi Dynamic Links için yapılandırın. Projenizde birden fazla site varsa kullanmak istediğiniz alana bağlı siteyi yapılandırdığınızdan emin olun.appAssociation
değeriniAUTO
olarak ayarlayın. Bu ayarda Hosting,assetlinks.json
veapple-app-site-association
dosyalarını istendiğinde dinamik olarak oluşturur.Yeniden yazma kurallarını
dynamicLinks
'untrue
olarak ayarlandığı şekilde ayarlayarak Dynamic Links için kullanmak istediğiniz yol ön eklerinin belirtin. Bu yollara yapılan istekler Dynamic Links üzerinden proxy'lenir.URL'lerin yollarını yeniden yazan kuralların aksine, Dynamic Link yeniden yazma kuralları normal ifadeler içeremez.
Siteniz için birden fazla yeniden yazma kuralınız varsa Hosting'ün, istekte eşleşen ilk yeniden yazma kuralını yürüttüğünü unutmayın.
Örneğin:
"hosting": { // ... "appAssociation": "AUTO", "rewrites": [ { "source": "/promos/**", "dynamicLinks": true }, { "source": "/links/share/**", "dynamicLinks": true } ] }
Yukarıdaki yapılandırmayla, aşağıdaki örneklere benzer URL ön ekleriyle Dynamic Links oluşturabilirsiniz:
https://your-domain/promos/link-suffix https://your-domain/links/share/link-suffix
Bu alanı yalnızca Dynamic Links için kullanıyorsanız yol öneki olmayan Dynamic Links oluşturmak için
/**
kaynak yolunu kullanabilirsiniz:{ "source": "/**", "dynamicLinks": true }
Yukarıdaki kuralla, aşağıdaki örnekte gösterildiği gibi Dynamic Links oluşturabilirsiniz:
https://your-domain/link-suffix
Hosting yapılandırma değişikliklerinizi dağıtın:
firebase deploy --only hosting
(isteğe bağlı) Hosting REST API'yi kullanarak dağıtılan
firebase.json
içeriğini kontrol edebilirsiniz.Yalnızca iOS: Xcode projenizin
Info.plist
dosyasındaFirebaseDynamicLinksCustomDomains
adlı bir anahtar oluşturun ve bu anahtarı uygulamanızın Dynamic Links URL ön eklerine ayarlayın. Örneğin:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/promos</string> <string>https://example.com/links/share</string> </array>
Dynamic Links ve Hosting için öncelik sırası
Dynamic Links için özellikle barındırma öncelik sırasına dikkat edin.
- Dynamic Links URL ön ekinizi, daha yüksek öncelikli barındırma yapılandırmalarıyla çakışmayacak şekilde ayarlayın (ör. barındırılan statik içerik, yeniden yazmalara göre her zaman önceliklidir).
rewrites
özelliğinde, Hosting yanıtı, isteklenen yolu yakalayan ilksource
glob tarafından belirtilen kurala uyar.
Örneğin, your-domain/source-path/link-suffix
için bir Dynamic Link oluşturursanız ancak your-domain/source-path/index.html
adresinde statik içeriğiniz varsa statik içerik önceliklidir. Son kullanıcı, Dynamic Link yerine index.html
görür. Benzer şekilde, your-domain/source-path/link-suffix
adresinde statik içeriğiniz varsa son kullanıcı Dynamic Link yerine statik içeriği görür.
Hem Dynamic Links hem de Hosting için aynı markayı kullanmak istiyorsanız Dynamic Links URL ön ekiniz için aşağıdaki seçeneklerden birini kullanabilirsiniz:
source
özelliğinizi bir yol önekiyle eşleşecek şekilde ayarlayın. Örneğin,example.com
özel alanınız varsa yeniden yazma kuralınız şu şekilde 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ı oluşturun, ardından
source
özelliğinizi bu alt alan adıyla eşleşecek şekilde ayarlayın. Örneğin,links.example.com
alt alanı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 } ]