Documentation utilisateur
  1. Qu'est-ce que redirection.io ?
  2. Guide de démarrage
  3. Que sont les organisations et les projets ?
  4. Inviter de nouveaux collaborateurs
  5. Compte utilisateur et préférences
  6. Utilisation des logs de trafic
  7. Créer une règle
  8. Référence des triggers et des marqueurs
  9. Référence des actions
  10. Comment importer ou exporter des règles de redirection en masse ?
  11. Gestion des instances
  12. Notifications du projet
  13. Segmentation des projets
  14. Combien ça coûte ?
  15. Puis-je utiliser redirection.io gratuitement ?
  16. À propos de nous

Documentation développeur
  1. TL;DR; Fast track
  2. Intégrations disponibles
  3. Module nginx
  4. Module Apache
  5. Intégration Upsun
  6. Intégration Clever Cloud
  7. Cloudflare Workers
  8. Intégration Fastly Compute@Edge
  9. Middleware Vercel
  10. Utiliser redirection.io avec Docker
  11. Est-ce rapide ?
  12. API publique

Documentation de l'agent
  1. Installation de l'agent
  2. Mise à jour de l'agent
  3. Options de l'agent en ligne de commande
  4. L'agent en tant que reverse proxy
  5. Référence de configuration de l'agent
  6. Configuration minimale
  7. Recevoir des requêtes
  8. Configuration du backend
  9. Virtualhosts
  10. Trusted proxies
  11. Base de données GeoIP
  12. Compression de la réponse
  13. Réglages de performance
  14. Logs d'accès
  15. Persister dans un bucket s3
  16. Monitoring de l'agent
  17. Utilisation de l'agent derrière un proxy HTTPS
  18. Exemples de configuration de l'agent redirection.io

Instances managées
  1. Que sont les instances managées ?
  2. Ajouter un domaine à votre projet
  3. Limites et quota des instances managées
  4. Questions fréquemment posées

Crawler
  1. Qu'est-ce que le crawler de redirection.io ?
  2. Démarrer un crawl
  3. Planifier un crawl
  4. Analyse des résultats d'un crawl
  5. La liste des crawls
  6. Crédits de crawl et tarifs
  7. Erreurs d'exploration
  8. Référence des métriques du crawler
  9. Référence des colonnes du crawler

Base de connaissances
  1. Créez vos premières redirections
  2. redirection.io : recettes de règles
  3. Mise en place d'un serveur de redirection sur Azure Cloud
  4. Données structurées et extraits enrichis
  5. Qu'est-ce qu'une redirection d'URL ?
  6. Pourquoi utiliser les redirections d'URL et comment les configurer

Versions legacy
  1. Référence de configuration de l'agent 1.x
  2. Référence de configuration de l'agent 2.x
  3. Intégrations dépréciées
  4. Intégration legacy de Cloudflare Workers

Changelogs
  1. redirectionio-agent
  2. libnginx-mod-redirectionio
  3. libapache2-mod-redirectionio

Intégration Upsun

Cette page explique comment installer et configurer redirection.io sur les environnements d'hébergement Upsun (anciennement platform.sh) ou Symfony Cloud, afin de permettre à votre équipe SEO ou marketing de surveiller le trafic HTTP et de résoudre les problèmes de référencement de manière simple et flexible.

Qu'est-ce qu'Upsun ? Qu'est-ce que Symfony Cloud ?

Upsun est un PaaS : il fournit un environnement d'hébergement entièrement géré, conçu pour faciliter la mise en place d'une plateforme d'hébergement évolutive et maintenue. L'objectif de ces fournisseurs est d'offrir un moyen efficace de construire des plateformes Web riches en fonctionnalités, sans avoir besoin d'une conception d'infrastructure complexe ou d'opérations sysadmin répétitives.

En résumé, Symfony Cloud est une offre commerciale adaptée au framework Symfony, et construite sur la plateforme technique d'Upsun (anciennement platform.sh).

Note légale : bien que nous soyons convaincus qu'Upsun et Symfony Cloud font un excellent travail, ce guide n'implique pas que nous endossons ou conseillons leurs services. Ils possèdent leurs propres marques déposées, nous ne sommes pas affiliés, etc. etc.

Dans la suite de ce guide, nous fournirons des instructions pour Upsun (Flex). Si vous déployez votre projet sur Upsun Fixed (anciennement platform.sh), les principes sont les mêmes, seuls quelques termes changent. Vous pouvez lire le guide de migration sur le site d'Upsun.

Schéma d'installation

Upsun propose de nombreux services prêts à l'emploi (Elasticsearch, Memcached, Varnish, etc.) qui peuvent être activés dans un projet hébergé avec seulement quelques lignes de YAML. Malheureusement, Upsun ne fournit pas (encore) d'intégration native redirection.io (ce qui serait utile, n'est-ce pas ?), mais il est possible de le faire fonctionner de manière performante avec peu de configuration.

Un schéma vaut mille mots, voici donc une architecture d'application Upsun standard :

Un projet Upsun simple

Et voici l'architecture qui sera utilisée avec l'agent redirection.io installé :

Un projet Upsun avec l'agent redirection.io

Dans cette configuration, les requêtes HTTP(s) entrantes sont routées vers l'agent redirection.io en mode reverse proxy, puis transmises au backend applicatif. Le reverse proxy redirectionio-agent est très performant et n'a pas d'impact significatif ou notable sur les performances globales, ce qui en fait une solution idéale pour corriger les problèmes de SEO à la volée, à la périphérie (edge) de votre infrastructure.

Si vous êtes pressé et souhaitez tester notre solution immédiatement, cliquez sur ce bouton pour utiliser un modèle de projet prédéfini :

Cela créera un projet Upsun de base avec redirection.io installé :

Un projet Upsun project sur la base du template redirection.io

Configurer votre application

Tout d'abord, configurez votre application avec Upsun comme vous le feriez sans utiliser redirection.io. Ainsi, pour une application nommée app, voici l'architecture traditionnelle :

├─ .upsun
    ├─ config.yaml    # définit les routes et les services requis par l'application
└─ app/               # contient le code de votre application
    └─ index.html

Le fichier .upsun/config.yaml définit comment router le trafic au sein de l'application Upsun. Habituellement, vous voudrez envoyer tout le trafic vers votre application :

routes:
    "https://{default}/":
        type: upstream
        upstream: "example-app:http"

    "https://www.{default}/":
        type: redirect
        to: "https://{default}/"

Dans le fichier .upsun/config.yaml, vous pouvez également configurer l'application Upsun (nom, taille du disque, type d'application, etc.). Par exemple :

applications:
    example-app:
        type: golang:1.25
        web:
            locations:
                "/":
                    root: "app"
                    passthru: "/index.html"

Configurer le redirectionio-agent

Comme le redirectionio-agent est un simple binaire sans dépendance externe (aucune base de données, etc. n'est requise), il vous suffit d'installer le binaire de l'agent en tant qu'application Upsun, comme expliqué dans le guide de documentation Applications multiples.

Tout d'abord, créez la configuration pour l'agent redirection.io :

└─ redirectionio
    └─ agent.yaml          # la configuration du redirectionio-agent

Dans redirectionio/agent.yaml, définissez les directives de configuration de redirectionio-agent comme expliqué dans notre documentation :

# /redirectionio/agent.yaml
instance:
    name: "${PLATFORM_ENVIRONMENT}"

    # Répertoire où les règles seront persistées
    persist: "${PLATFORM_APP_DIR}/rules"

    logging: true

# Exécuter l'agent en tant que reverse proxy
reverse_proxy:
    listen:
        - "tcp://0.0.0.0:${PORT}" # Point d'écoute
    forward:
        address: "app.internal" # Remote
    agent:
        project_key: "${REDIRECTIONIO_KEY}" # Clé de projet à utiliser

# Logs techniques optionnels de fonctionnement de l'agent
# log:
#     -
#         output: file
#         format: text
#         path: "${PLATFORM_APP_DIR}/log/agent.log"

Bien entendu, vous pouvez adapter la valeur pour instance_name (ici, elle est générée sur la base de la variable d'environnement PLATFORM_ENVIRONMENT).

Toutes les directives de configuration des proxies de l'agent peuvent être utilisées dans la section reverse_proxy.

Modifiez .upsun/config.yaml pour ajouter la configuration de l'application redirectionio-agent :

applications:
    redirectionio-agent:
        type: golang:1.15
        disk: 128
        hooks:
            build: |
                set -ex
                curl -s -J -L "https://packages.redirection.io/dist/stable/3/any/redirectionio-agent-latest_any_amd64.tar.gz" | tar -C /app/ -xzpf -
        relationships:
            app: "example-app:http"
        web:
            upstream:
                socket_family: tcp
                protocol: http
            commands:
                start: |
                    set -ex
                    /app/redirection-agent/redirectionio-agent --config ./agent.yaml
            locations:
                "/":
                    allow: false
                    passthru: true

        mounts:
            # les règles seront sauvegardées localement dans ce dossier
            'rules':
                source: local
                source_path: rules
            # dossier de log redirection.io
            'log':
                source: local
                source_path: log

    # Votre configuration d'application originale
    example-app:
        type: golang:1.25
        web:
            locations:
                "/":
                    root: "app"
                    passthru: "/index.html"

Il n'y a pas grand-chose à expliquer sur cette application :

  • la directive disk définit la taille du disque attaché. Selon la taille de votre ensemble de règles et votre configuration de l'agent concernant la persistance des données, vous pourriez vouloir augmenter cette valeur ;
  • le type de l'image utilisée est golang, mais vous pouvez utiliser n'importe lequel des types disponibles. Il se trouve que l'image golang est la plus petite ;
  • le nœud hooks.build télécharge la dernière version de l'agent redirection.io au moment de la construction ;
  • le nœud relationships.app permet de "lier" les deux applications Upsun. Changer ce nom nécessite également de changer le nœud reverse_proxy.forward.address dans le fichier agent.yaml ;
  • le nœud web.command.start définit comment démarrer le binaire redirectionio-agent avec la bonne configuration ;
  • la section mounts définit les chemins qui doivent être rendus accessibles en écriture pour l'agent redirection.io.

Le hook ci-dessus télécharge et installe la dernière version disponible du logiciel agent redirection.io. Si vous souhaitez exécuter une version fixe, vous pouvez bien sûr remplacer l'URL de téléchargement - utilisez simplement l'un des paquets disponibles dans notre dépôt.

Une fois que vous avez trouvé la clé de projet redirection.io (dans l'écran "instances" du manager, cliquez sur le bouton "Installer sur votre infrastructure"), ajoutez cette clé comme une variable de projet Upsun, ce qui aidera à garder cette clé secrète (et partagée au sein de votre équipe) :

$ upsun variable:create --name env:REDIRECTIONIO_KEY --sensitive true --value "mettez votre clé ici"

Dernière étape, modifiez le fichier .upsun/config.yaml pour demander à Upsun de router le trafic entrant vers l'application redirectionio-agent nouvellement créée au lieu de l'application app :

routes:
    "https://{default}/":
        type: upstream
        upstream: "redirectionio-agent:http"

    "https://www.{default}/":
        type: redirect
        to: "https://{default}/"

Bénéfices

Une fois les modifications effectuées, validez et poussez vers le remote upsun. Cela déclenchera un nouveau déploiement de votre projet :

$ git commit -m "use redirection.io"
$ git push

(des choses se passent)

Processing activity: John Doe pushed to Master
    Found 1 new commit

    Building application 'example-app' (runtime type: golang:1.25, tree: e7f1eab)
      Generating runtime configuration.
      Executing pre-flight checks...
      Compressing application.
      Beaming package to its final destination.

    Building application 'redirectionio-agent' (runtime type: golang:1.25, tree: 2fd5612)
      Generating runtime configuration.
      Executing build hook...
        W: + curl -s -J -L https://packages.redirection.io/dist/stable/3/any/redirectionio-agent-latest_any_amd64.tar.gz
        W: + tar -C /app/ -xzpf -
      Executing pre-flight checks...
      Compressing application.
      Beaming package to its final destination.

    Redeploying environment master
      Preparing deployment
      Closing services example-app, router, and redirectionio-agent
      Opening application example-app and its relationships
      Opening environment
      Environment configuration
        example-app (type: golang:1.25, size: S, disk: 128)
        redirectionio-agent (type: golang:1.25, size: S, disk: 128)

      Environment routes
        http://master-XXXXXXXXXX.platformsh.site/ redirects to https://master-XXXXXXXXXX.platformsh.site/
        http://www.master-XXXXXXXXXX.platformsh.site/ redirects to https://www.master-XXXXXXXXXX.platformsh.site/
        https://master-XXXXXXXXXX.platformsh.site/ is served by application `redirectionio-agent`
        https://www.master-XXXXXXXXXX.platformsh.site/ redirects to https://master-XXXXXXXXXX.platformsh.site/

Envoyez une requête HTTP(s) à l'URL de votre application, et vous devriez voir du trafic loggué dans le manager redirection.io. Vous pouvez maintenant auditer votre trafic, créer des redirections et corriger les erreurs SEO en toute simplicité !

Étape suivante, apprenez à créer vos premières redirections !

Cette page a été mise à jour le 14 avr. 2026
Vous ne trouvez pas votre réponse ?