Du kannst dein Gerät (Dynamic Links) besser kontrollieren durch die Verwendung eigener
anstelle einer page.link
-Subdomain. Mit benutzerdefinierten Domains können Sie
Dynamic Links wie in den folgenden Beispielen:
https://example.com/link-suffix https://example.com/links/promos/link-suffix https://links.example.com/link-suffix https://ex.amp.le/link-suffix
Der Teil der URL vor link-suffix wird als URL-Präfix bezeichnet. Er enthält sowohl Ihre benutzerdefinierte Dynamic Link-Domain als auch ein Pfadpräfix. Erforderliche Schritte geben Sie beim Erstellen von Dynamic Links ein URL-Präfix an.
Zum Einrichten einer benutzerdefinierten Domain ist die Berechtigung „Bearbeiter“ oder „Inhaber“ in Firebase erforderlich Projekt arbeiten.
Ihre Webdomain für Dynamic Links wird verwendet
Du kannst für deine Dynamic Links und deine Webseiten dieselbe Domain verwenden (Universal) und App-Links. Achten Sie dabei darauf, dass Ihre Dynamic Link-URLs nicht mit Ihren Web-URLs in Konflikt stehen. Wenn Sie Dynamic Links für die Verwendung eines bestimmte URL-Präfixe haben, werden alle URLs, die mit diesem Präfix beginnen, Dynamic Links, daher können Sie URLs mit diesem Präfix nicht verwenden, um auf normale gehostete Inhalte.
Wenn Sie beispielsweise einen Dynamic Link zur Ressource https://example.com/my-resource
(eine Webseite, einen universellen Link oder einen App-Link) erstellen möchten, können Sie https://example.com/
nicht als Dynamic Links-URL-Präfix verwenden, da https://example.com/my-resource
andernfalls als Dynamic Link behandelt wird.
Stattdessen müssen Sie ein URL-Präfix mit einer anderen Domain oder einem anderen Pfadpräfix verwenden.
Die folgenden Dynamic Links-Videos im Langformat (und entsprechende Kurzlinks) funktionieren also nicht
da die im Parameter link
angegebenen URLs mit
Dynamic Link-URL-Präfix, https://example.com/
:
https://example.com/?link=https://example.com/my-resource https://example.com/?link=https://example.com/resources/my-resource
Die folgenden Dynamic Links-Videos im Langformat (und entsprechende Kurzlinks) können aber funktionieren.
da die URL-Präfixe nicht mit den link
-URLs in Konflikt stehen:
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
Benutzerdefinierte Domain in der Firebase-Konsole einrichten
Normalerweise können Sie eine benutzerdefinierte Domain vollständig in der Firebase-Konsole einrichten. Bis Gehen Sie dazu so vor:
Falls Sie Firebase Hosting noch nicht für Ihr Projekt eingerichtet haben, öffnen Sie die Hosting-Seite der Firebase-Konsole auf: Klicken Sie unter Jetzt starten durch die Einrichtungsanleitung. Sie müssen die angegebenen Schritte derzeit nicht ausführen.
Öffnen Sie die Dynamic Links-Seite der Firebase-Konsole.
Wenn Sie Dynamic Links noch nicht verwendet haben, klicken Sie auf Jetzt starten. Andernfalls klicken Sie auf URL-Präfix hinzufügen aus dem Drop-down-Menü.
Schließen Sie dann den Einrichtungsassistenten ab und geben Sie die Domain und das Pfadpräfix an, verwenden möchten, wenn Sie dazu aufgefordert werden.
Nur iOS: Erstellen Sie in der Datei
Info.plist
Ihres Xcode-Projekts einen Schlüssel namensFirebaseDynamicLinksCustomDomains
und lege dafür die Dynamic Links-URL deiner App fest Präfixe. Beispiel:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/link</string> <string>https://example.com/promos</string> </array>
Benutzerdefinierte Domain manuell einrichten
In einigen Fällen, z. B. wenn Sie bereits eine benutzerdefinierte Domain für Dynamic Links und möchten eine weitere Domain hinzufügen oder wenn Sie bereits eine Domain hinzufügen verbunden mit einer Hosting-Website ist, müssen Sie Ihre benutzerdefinierte Domain manuell einrichten.
Anleitung:
Domain mit Firebase Hosting verbinden falls noch nicht geschehen.
Wenn Sie Ihre Domain mit Firebase Hosting einrichten, müssen Sie die Konfigurationsdatei
firebase.json
in Ihrem lokalen Projektverzeichnis erstellen.Aktualisieren Sie die Firebase CLI auf die neueste Version (Version 6.5.0 oder höher).
Konfigurieren Sie Ihre Hosting-Website für Dynamic Links in der
firebase.json
-Datei Ihres Projekts. Wenn Ihr Projekt mehrere Websites hat, müssen Sie die Website konfigurieren, die mit der Domain verbunden ist, die Sie verwenden möchten.Setzen Sie
appAssociation
aufAUTO
. Mit dieser Einstellung werden Hosting generiertassetlinks.json
undapple-app-site-association
dynamisch wenn sie angefordert werden.Geben Sie die Pfadpräfixe an, die Sie für Dynamic Links verwenden möchten, indem Sie das Umschreiben festlegen Regeln mit
dynamicLinks
auftrue
festgelegt. Anfragen an diese Pfade werden über einen Proxy an Dynamic Links weitergeleitet.Im Gegensatz zu Regeln, die Pfade in URLs umschreiben, Dynamic Link reguläre Ausdrücke enthalten.
Wenn Sie mehrere Regeln zum Überschreiben für Ihre Website haben, beachten Sie Folgendes: Hosting führt die erste Umschreibungsregel aus, die mit der Anfrage übereinstimmt.
Beispiel:
"hosting": { // ... "appAssociation": "AUTO", "rewrites": [ { "source": "/promos/**", "dynamicLinks": true }, { "source": "/links/share/**", "dynamicLinks": true } ] }
Mit der obigen Konfiguration können Sie Dynamic Links mit URL-Präfixen wie in den folgenden Beispielen erstellen:
https://your-domain/promos/link-suffix https://your-domain/links/share/link-suffix
Wenn Sie diese Domain nur für Dynamic Links verwenden, können Sie den Quellpfad
/**
verwenden um Dynamic Links ohne Pfadpräfix zu erstellen:{ "source": "/**", "dynamicLinks": true }
Mit der obigen Regel können Sie Dynamic Links wie im folgenden Beispiel erstellen:
https://your-domain/link-suffix
Stellen Sie die Hosting-Konfigurationsänderungen bereit:
firebase deploy --only hosting
Optional: Sie können die bereitgestellten
firebase.json
-Inhalte mit der Hosting REST API prüfen.Nur iOS: Erstellen Sie in der Datei
Info.plist
Ihres Xcode-Projekts einen Schlüssel namensFirebaseDynamicLinksCustomDomains
und lege dafür die Dynamic Links-URL deiner App fest Präfixe. Beispiel:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/promos</string> <string>https://example.com/links/share</string> </array>
Prioritätsreihenfolge für Dynamic Links und Hosting
Bei Dynamic Links ist die Prioritätsreihenfolge des Hostings besonders wichtig.
- Achten Sie darauf, dass das URL-Präfix Dynamic Links nicht mit einer höheren Priorität in Konflikt steht Hosting-Konfigurationen (z. B. hat gehosteter statischer Inhalt immer Priorität) zu überarbeiten).
- Im Attribut
rewrites
befolgt die Antwort Hosting die Regel die durch den erstensource
-Glob, der den angeforderten Pfad erfasst, angegeben wird.
Wenn Sie z. B. eine Dynamic Link für
your-domain/source-path/link-suffix
aber Sie haben auch statische Inhalte
your-domain/source-path/index.html
, der
Statische Inhalte haben Vorrang. Ein Endnutzer sieht index.html
anstelle von Dynamic Link. Ähnliches gilt, wenn Sie statische Inhalte
your-domain/source-path/link-suffix
,
sieht der Endnutzer den statischen Inhalt und nicht den Dynamic Link.
Wenn du für Dynamic Links und Hosting dasselbe Branding verwenden möchtest, solltest du eine der folgenden Optionen für das URL-Präfix Dynamic Links:
Legen Sie das Attribut
source
so fest, dass es einem Pfadpräfix entspricht. Wenn Sie zum Beispiel eine benutzerdefinierten Domain vonexample.com
könnte Ihre Regel zum Überschreiben so aussehen:// Domain is example.com "rewrites": [ { "source": "/links/**", // Dynamic Links start with "https://example.com/links/" "dynamicLinks": true } ]
Richten Sie eine Subdomain für Dynamic Links ein und legen Sie dann das Attribut
source
auf mit dieser Subdomain übereinstimmen. Wenn Sie beispielsweise eine Subdomain vonlinks.example.com
, könnte Ihre Regel zum Überschreiben so aussehen:// Domain is links.example.com "rewrites": [ { "source": "/**", // Dynamic Links start with "https://links.example.com/" "dynamicLinks": true } ]