Sie können das Branding Ihrer dynamischen Links besser steuern, indem Sie Ihre eigene Domain anstelle einer page.link
Subdomain verwenden. Mit benutzerdefinierten Domänen können Sie dynamische Links wie in den folgenden Beispielen erstellen:
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 und enthält sowohl Ihre benutzerdefinierte Domäne für dynamische Links als auch ein Pfadpräfix. Sie müssen ein URL-Präfix angeben, wenn Sie dynamische Links erstellen.
Zum Einrichten einer benutzerdefinierten Domain ist die Berechtigung eines Bearbeiters oder Eigentümers für Ihr Firebase-Projekt erforderlich.
Verwendung Ihrer Webdomain für dynamische Links
Sie können dieselbe Domain für Ihre dynamischen Links und Ihre Webseiten, universellen Links und App-Links verwenden, aber wenn Sie dies tun, müssen Sie darauf achten, dass Ihre dynamischen Link-URLs nicht mit Ihren Web-URLs in Konflikt geraten. Wenn Sie dynamische Links für die Verwendung eines bestimmten URL-Präfix konfigurieren, werden alle URLs, die mit diesem Präfix beginnen, als dynamische Links behandelt, sodass Sie URLs mit diesem Präfix nicht verwenden können, um auf gewöhnliche gehostete Inhalte zu verweisen.
Wenn Sie beispielsweise einen dynamischen Link zur Ressource https://example.com/my-resource
(eine Webseite, ein universeller Link oder ein App-Link) erstellen möchten, können Sie https://example.com/
nicht verwenden https://example.com/
als URL-Präfix für dynamische Links, da dies dazu führen würde, dass https://example.com/my-resource
als dynamischer Link behandelt würde. Stattdessen müssen Sie ein URL-Präfix entweder mit einer anderen Domäne oder einem anderen Pfadpräfix verwenden.
Die folgenden dynamischen Links in Langform (und entsprechende Kurzlinks) funktionieren also nicht wie beabsichtigt, da die durch den link
angegebenen URLs mit dem URL-Präfix für dynamische Links beginnen, https://example.com/
:
https://example.com/?link=https://example.com/my-resource https://example.com/?link=https://example.com/resources/my-resource
Die folgenden dynamischen Links in Langform (und entsprechende Kurzlinks) können jedoch 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
Richten Sie eine benutzerdefinierte Domäne in der Firebase-Konsole ein
Normalerweise können Sie eine benutzerdefinierte Domäne vollständig in der Firebase-Konsole einrichten. Dazu:
Wenn Sie Firebase-Hosting noch nicht für Ihr Projekt eingerichtet haben, öffnen Sie die Seite Hosting der Firebase-Konsole, klicken Sie auf Erste Schritte und klicken Sie sich durch die Einrichtungsanweisungen. Sie müssen die angegebenen Schritte zu diesem Zeitpunkt nicht ausführen.
Öffnen Sie die Seite „Dynamische Links“ der Firebase-Konsole.
Wenn Sie dynamische Links noch nicht verwendet haben, klicken Sie auf Erste Schritte . Klicken Sie andernfalls im Dropdown-Menü auf URL-Präfix hinzufügen .
Schließen Sie dann den Einrichtungsassistenten ab und geben Sie bei Aufforderung die Domäne und das Pfadpräfix an, die Sie verwenden möchten.
Nur iOS : Erstellen Sie in der
Info.plist
Datei Ihres Xcode-Projekts einen Schlüssel namensFirebaseDynamicLinksCustomDomains
und legen Sie ihn auf die URL-Präfixe für dynamische Links Ihrer App fest. Zum Beispiel:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/link</string> <string>https://example.com/promos</string> </array>
Richten Sie eine benutzerdefinierte Domäne manuell ein
In einigen Situationen, z. B. wenn Sie bereits eine benutzerdefinierte Domäne für dynamische Links eingerichtet haben und eine weitere Domäne hinzufügen möchten, oder wenn Sie eine bereits mit einer Hosting-Site verbundene Domäne hinzufügen, müssen Sie Ihre benutzerdefinierte Domäne manuell einrichten.
Dazu:
Verbinden Sie Ihre Domain mit Firebase Hosting, falls Sie dies noch nicht getan haben.
Das Einrichten Ihrer Domäne mit Firebase Hosting umfasst das Erstellen der Konfigurationsdatei
firebase.json
in Ihrem lokalen Projektverzeichnis.Aktualisieren Sie auf die neueste Version der Firebase CLI (v6.5.0 oder höher).
Konfigurieren Sie Ihre Hosting-Site für dynamische Links in der
firebase.json
Datei Ihres Projekts. Wenn Ihr Projekt mehrere Sites hat, stellen Sie sicher, dass Sie die Site konfigurieren, die mit der Domäne verbunden ist, die Sie verwenden möchten.Legen Sie
appAssociation
aufAUTO
fest. Mit dieser Einstellung generiert Hosting dynamischassetlinks.json
undapple-app-site-association
Dateien, wenn sie angefordert werden.Geben Sie die Pfadpräfixe an, die Sie für dynamische Links verwenden möchten, indem Sie Umschreibungsregeln festlegen, bei denen
dynamicLinks
auftrue
gesetzt ist. Anforderungen an diese Pfade werden an dynamische Links weitergeleitet.Im Gegensatz zu Regeln, die Pfade in URLs umschreiben, können Umschreibungsregeln für dynamische Links keine regulären Ausdrücke enthalten.
Wenn Sie mehrere Umschreibungsregeln für Ihre Website haben, beachten Sie, dass Hosting die erste Umschreibungsregel ausführt, die der Anfrage entspricht.
Zum Beispiel:
"hosting": { // ... "appAssociation": "AUTO", "rewrites": [ { "source": "/promos/**", "dynamicLinks": true }, { "source": "/links/share/**", "dynamicLinks": true } ] }
Mit der obigen Konfiguration können Sie dynamische Links mit URL-Präfixen wie den folgenden Beispielen erstellen:
https://your-domain/promos/link-suffix https://your-domain/links/share/link-suffix
Wenn Sie diese Domain nur für dynamische Links verwenden, können Sie einen Quellpfad von
/**
verwenden, um dynamische Links ohne Pfadpräfix zu erstellen:{ "source": "/**", "dynamicLinks": true }
Mit der obigen Regel können Sie dynamische Links wie im folgenden Beispiel erstellen:
https://your-domain/link-suffix
Stellen Sie Ihre Hosting-Konfigurationsänderungen bereit:
firebase deploy --only hosting
(optional) Sie können den bereitgestellten
firebase.json
Inhalt mithilfe der Hosting-REST-API überprüfen.Nur iOS : Erstellen Sie in der
Info.plist
Datei Ihres Xcode-Projekts einen Schlüssel namensFirebaseDynamicLinksCustomDomains
und legen Sie ihn auf die URL-Präfixe für dynamische Links Ihrer App fest. Zum Beispiel:<key>FirebaseDynamicLinksCustomDomains</key> <array> <string>https://example.com/promos</string> <string>https://example.com/links/share</string> </array>
Prioritätsreihenfolge für dynamische Links und Hosting
Achten Sie bei dynamischen Links besonders auf die Hosting-Prioritätsreihenfolge .
- Stellen Sie sicher, dass Ihr URL-Präfix für dynamische Links nicht mit Hosting-Konfigurationen mit höherer Priorität in Konflikt steht (z. B. hat gehosteter statischer Inhalt immer Vorrang vor Umschreibungen).
- Innerhalb des Attributs
rewrites
folgt die Hosting-Antwort der Regel, die vom erstensource
Glob angegeben wird, das den angeforderten Pfad erfasst .
Wenn Sie beispielsweise einen dynamischen Link für your-domain / source-path / link-suffix
einrichten, aber auch statische Inhalte unter your-domain / source-path /index.html
haben, hat der statische Inhalt Vorrang. Ein Endbenutzer sieht index.html
anstelle des dynamischen Links. Wenn Sie über statische Inhalte unter your-domain / source-path / link-suffix
verfügen, sieht der Endbenutzer in ähnlicher Weise den statischen Inhalt und nicht den dynamischen Link.
Wenn Sie dasselbe Branding sowohl für dynamische Links als auch für das Hosting verwenden möchten, ziehen Sie eine der folgenden Optionen für Ihr URL-Präfix für dynamische Links in Betracht:
Stellen Sie Ihr
source
so ein, dass es mit einem Pfadpräfix übereinstimmt. Wenn Sie beispielsweise eine benutzerdefinierte Domäne vonexample.com
haben, könnte Ihre Umschreibungsregel wie folgt lauten:// Domain is example.com "rewrites": [ { "source": "/links/**", // Dynamic Links start with "https://example.com/links/" "dynamicLinks": true } ]
Richten Sie eine Subdomain ein, die für dynamische Links verwendet werden soll, und stellen Sie dann Ihr
source
so ein, dass es mit dieser Subdomain übereinstimmt. Wenn Sie beispielsweise eine Subdomain vonlinks.example.com
haben, könnte Ihre Rewrite-Regel lauten:// Domain is links.example.com "rewrites": [ { "source": "/**", // Dynamic Links start with "https://links.example.com/" "dynamicLinks": true } ]