Google s'est engagé à promouvoir l'équité raciale pour les communautés noires. Regarde comment.
Cette page a été traduite par l'API Cloud Translation.
Switch to English

Configurer un domaine personnalisé pour les liens dynamiques

Vous pouvez mieux contrôler la marque de vos liens dynamiques en utilisant votre propre domaine au lieu d'un sous-domaine page.link . Avec les domaines personnalisés, vous pouvez créer des liens dynamiques comme les exemples suivants:

https://example.com/ link-suffix
https://example.com/links/promos/ link-suffix
https://links.example.com/ link-suffix
https://ex.amp.le/ link-suffix

La partie de l'URL avant le link-suffix s'appelle le préfixe d'URL et contient à la fois votre domaine de lien dynamique personnalisé et un préfixe de chemin. Vous devrez fournir un préfixe d'URL lorsque vous créez des liens dynamiques.

La configuration d'un domaine personnalisé nécessite l'autorisation de l'éditeur ou du propriétaire sur votre projet Firebase.

Utilisation de votre domaine Web pour les liens dynamiques

Vous pouvez utiliser le même domaine pour vos liens dynamiques et vos pages Web, liens universels et liens d'application, mais si vous le faites, vous devez veiller à ce que vos URL de lien dynamique ne soient pas en conflit avec vos URL Web. Lorsque vous configurez les liens dynamiques pour utiliser un préfixe d'URL particulier, toutes les URL commençant par ce préfixe sont traitées comme des liens dynamiques, vous ne pouvez donc pas utiliser d'URL avec ce préfixe pour pointer vers du contenu hébergé ordinaire.

Par exemple, si vous souhaitez créer un lien dynamique vers la ressource https://example.com/my-resource (une page Web, un lien universel ou un lien d'application), vous ne pouvez pas utiliser https://example.com/ comme préfixe d'URL des liens dynamiques, car cela entraînerait le traitement de https://example.com/my-resource comme un lien dynamique. Au lieu de cela, vous devez utiliser un préfixe d'URL avec un domaine différent ou un préfixe de chemin différent.

Ainsi, les liens dynamiques de forme longue suivants (et les liens courts équivalents) ne fonctionneront pas comme prévu, car les URL spécifiées par le paramètre de link commencent par le préfixe d'URL de lien dynamique, https://example.com/ :

 https://example.com/?link=https://example.com/my-resource
 https://example.com/?link=https://example.com/resources/my-resource

Mais les liens dynamiques de forme longue suivants (et les liens courts équivalents) peuvent fonctionner, car les préfixes d'URL ne sont pas en conflit avec les URL de 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

Configurer un domaine personnalisé dans la console Firebase

Vous pouvez généralement configurer complètement un domaine personnalisé dans la console Firebase. Faire cela:

  1. Si vous n'avez pas configuré Firebase Hosting pour votre projet, ouvrez la page Hosting de la console Firebase, cliquez sur Get Started et cliquez sur les instructions de configuration. Vous n'êtes pas obligé de suivre les étapes indiquées pour le moment.

  2. Ouvrez la page Liens dynamiques de la console Firebase.

  3. Si vous n'avez jamais utilisé de liens dynamiques auparavant, cliquez sur Commencer . Sinon, cliquez sur Ajouter un préfixe d'URL dans le menu déroulant.

    Ensuite, terminez l'assistant de configuration, en spécifiant le domaine et le préfixe de chemin que vous souhaitez utiliser lorsque vous y êtes invité.

  4. iOS uniquement : dans le fichier Info.plist de votre projet Xcode, créez une clé appelée FirebaseDynamicLinksCustomDomains et définissez-la sur les préfixes d'URL Dynamic Links de votre application. Par exemple:

     <key>FirebaseDynamicLinksCustomDomains</key>
    <array>
      <string>https://example.com/link</string>
      <string>https://example.com/promos</string>
    </array>
     

Configurer manuellement un domaine personnalisé

Dans certaines situations, par exemple lorsque vous avez déjà un domaine personnalisé configuré pour les liens dynamiques et que vous souhaitez ajouter un autre domaine, ou lorsque vous ajoutez un domaine déjà connecté à un site d'hébergement, vous devez configurer votre domaine personnalisé manuellement.

Faire cela:

  1. Connectez votre domaine à Firebase Hosting si vous ne l'avez pas déjà fait.

    La configuration de votre domaine avec Firebase Hosting inclut la création du fichier de configuration firebase.json dans votre répertoire de projet local.

  2. Mettez à jour vers la dernière version de Firebase CLI (v6.5.0 ou version ultérieure).

  3. Configurez votre site d'hébergement pour les liens dynamiques dans le fichier firebase.json votre projet. Si votre projet comporte plusieurs sites, veillez à configurer le site connecté au domaine que vous souhaitez utiliser.

    • Définissez appAssociation sur AUTO . Avec ce paramètre, l'hébergement génère dynamiquement les assetlinks.json et apple-app-site-association lorsqu'ils sont demandés.

    • Spécifiez les préfixes de chemin à utiliser pour les liens dynamiques en définissant des règles de réécriture avec dynamicLinks défini sur true . Les demandes adressées à ces chemins sont transmises par proxy aux liens dynamiques.

      Contrairement aux règles qui réécrivent les chemins vers les URL, les règles de réécriture des liens dynamiques ne peuvent pas contenir d'expressions régulières.

      Si vous avez plusieurs règles de réécriture pour votre site, sachez que Hosting exécute la première règle de réécriture qui correspond à la demande.

    Par exemple:

     "hosting": {
      // ...
      "appAssociation": "AUTO",
      "rewrites": [
        {
          "source": "/promos/**",
          "dynamicLinks": true
        },
        {
          "source": "/links/share/**",
          "dynamicLinks": true
        }
      ]
    }
     

    Avec la configuration ci-dessus, vous pouvez créer des liens dynamiques avec des préfixes d'URL comme les exemples suivants:

    https:// your-domain /promos/ link-suffix
    https:// your-domain /links/share/ link-suffix
    

    Si vous utilisez ce domaine uniquement pour les liens dynamiques, vous pouvez utiliser un chemin source de /** pour créer des liens dynamiques sans préfixe de chemin:

     {
      "source": "/**",
      "dynamicLinks": true
    }
     

    Avec la règle ci-dessus, vous pouvez créer des liens dynamiques comme dans l'exemple suivant:

    https:// your-domain / link-suffix 

  4. Déployez vos modifications de configuration d'hébergement:

    firebase deploy --only hosting

    (facultatif) Vous pouvez vérifier le contenu firebase.json déployé à l'aide de l' API REST d'hébergement .

  5. iOS uniquement : dans le fichier Info.plist de votre projet Xcode, créez une clé appelée FirebaseDynamicLinksCustomDomains et définissez-la sur les préfixes d'URL Dynamic Links de votre application. Par exemple:

     <key>FirebaseDynamicLinksCustomDomains</key>
    <array>
      <string>https://example.com/promos</string>
      <string>https://example.com/links/share</string>
    </array>
     

Ordre de priorité pour les liens dynamiques et l'hébergement

Pour les liens dynamiques, soyez particulièrement attentif à l' ordre de priorité d'hébergement .

  • Assurez-vous que votre préfixe d'URL de liens dynamiques n'est pas en conflit avec les configurations d'hébergement de priorité plus élevée (par exemple, le contenu statique hébergé a toujours la priorité sur les réécritures).
  • Dans l'attribut rewrites , la réponse Hosting obéira à la règle spécifiée par le premier glob source qui capture le chemin demandé .

Par exemple, si vous configurez un lien dynamique pour your-domain / source-path / link-suffix mais que vous avez également du contenu statique dans your-domain / source-path /index.html , le contenu statique est prioritaire. Un utilisateur final verra index.html plutôt que le lien dynamique. De même, si vous avez du contenu statique dans your-domain / source-path / link-suffix , l'utilisateur final verra le contenu statique plutôt que le lien dynamique.

Si vous souhaitez utiliser la même marque pour les liens dynamiques et l'hébergement, envisagez l'une des options suivantes pour votre préfixe d'URL de liens dynamiques:

  • Définissez votre attribut source pour qu'il corresponde à un préfixe de chemin. Par exemple, si vous disposez d'un domaine personnalisé de example.com , votre règle de réécriture pourrait être:

     // Domain is example.com
    "rewrites": [ {
      "source": "/links/**",  // Dynamic Links start with "https://example.com/links/"
      "dynamicLinks": true
    } ]
     
  • Configurez un sous-domaine à utiliser pour les liens dynamiques, puis définissez votre attribut source pour qu'il corresponde à ce sous-domaine. Par exemple, si vous avez un sous-domaine de links.example.com , votre règle de réécriture pourrait être:

     // Domain is links.example.com
    "rewrites": [ {
      "source": "/**",  // Dynamic Links start with "https://links.example.com/"
      "dynamicLinks": true
    } ]