← Tous les articles
IA · Méthode
Plan 9
11 oct 2026
9 min de lecture

Comment nous avons créé un site .NET optimisé pour le SEO sans écrire une ligne de code

Un guide pratique : comment plan9.co.uk est passé d’un prototype Claude Design à un site en ligne, prérendu sur IIS, en quelques jours seulement, avec un score SEO de 100 et chaque ligne de code écrite par Claude.

IA · Méthode
Prototype → Design → Configuration → Publication → On recommence

En quelques jours seulement, le site que vous lisez est passé d’un prototype Claude Design à un site ASP.NET Core en ligne et prérendu sur IIS. Il obtient 100 en SEO et 91 en performance mobile dans Lighthouse. Personne dans notre équipe n’a tapé une ligne de code. Chaque ligne de C#, de MSBuild et de Node a été écrite par Claude Cowork.

C’est le guide que nous aurions aimé avoir au départ. Si vos sites tournent sur Windows, IIS et .NET et que vous voulez utiliser Claude pour créer un site rapide et bien référencé, voici comment nous avons procédé, ce qui a mal tourné et ce que nous referions.

Cet article explique comment nous avons fait. Pour savoir pourquoi nous avons construit notre site ainsi, lisez Les cordonniers sont les plus mal chaussés.

À retenir

Zéro codeNous avons fixé la direction, relu et testé. Claude a fait le gros du travail.
Répartir le travailClaude Design pour les pages et le contenu, Claude Cowork pour les fonctions côté serveur, le prérendu et la publication.
Prérendre pour le SEOChaque robot d’indexation voit du HTML finalisé, pas des espaces réservés JavaScript.
Publier en deux étapesExporter un zip, cliquer sur Publier.
Mesurer et ajusterAprès un audit Lighthouse, la performance mobile est passée de 83 à 91. Tous les indicateurs sont au-dessus de 90.

Pas besoin de coder, mais il faut connaître le terrain

Claude a écrit chaque ligne de code. Notre rôle était de décrire ce que nous voulions, de relire les résultats et de les tester. Cela ne fonctionne que si vous connaissez assez bien les outils concernés, comme Visual Studio, IIS, Cloudflare, le DNS, l’envoi d’e-mails et Google Search Console, pour repérer ce qui cloche. Voyez-le comme diriger le chantier plutôt que le réaliser.

Deux Claude, deux couloirs

La décision la plus utile a été de répartir le travail entre deux outils et de garder chacun dans son couloir.

Claude Design : apparence et contenuIl a conçu chaque page, rédigé les textes et les études de cas, généré toutes les pages à partir d’un fichier maître et exporté le site en zip.
Claude Cowork : serveur et tuyauterieRelié à notre environnement de développement local, il a écrit le code .NET, e-mail, SEO et publication, testé les modifications dans son propre bac à sable et vérifié le site en ligne dans un navigateur.
De courts briefs Markdown entre les deuxLes deux se passaient le travail via de petites notes laissées dans le dossier du projet, comme CONTACT-FORM.md (ce que le formulaire envoie et attend en retour) et PRERENDER.md. Chaque côté savait exactement ce dont l’autre avait besoin.

La stack

Visual Studio et .NET 10Compile l’application. Le bouton Publier la déploie sur IIS avec Web Deploy.
IIS sur AWSHéberge l’application sur un serveur Windows chez Amazon Web Services.
CloudflareDNS, HTTPS, cache et compression devant le serveur.
Amazon SESEnvoie les e-mails du formulaire de contact.
Node.js et PlaywrightDes outils de build qui tournent dans notre environnement de développement pendant la publication. Rien de plus ne tourne sur le serveur en ligne.

Nous sommes partis d’un projet ASP.NET Core vide dont le seul code affichait « Hello World! », et avons copié l’export Claude Design dans wwwroot.

Étape 1 : servir le site statique

La première correction était simple. L’application ne servait pas wwwroot, donc chaque visite affichait « Hello World! ». Claude Cowork a activé les fichiers statiques pour que l’index.html de chaque dossier se charge à une adresse propre comme /work/alliance-wine/, réglé un cache sensé, masqué les fichiers de travail comme les notes de design et les scripts de build, et ajouté une redirection HTTPS pour la production.

Étape 2 : un formulaire de contact qui fonctionne

Claude Design a défini le formulaire et rédigé un court contrat qui le décrit. Claude Cowork a construit le côté serveur en conséquence.

Un endpoint /api/contactVérifie le nom, l’e-mail et le message côté serveur, puis envoie la demande dans notre boîte via Amazon SES, avec le visiteur en Reply-To.
Un e-mail d’accusé de réception à nos couleursClaude Design a créé le modèle d’e-mail dans le style du site. Le serveur y insère les coordonnées du visiteur et l’envoie avec une version texte brut.
Protection anti-spamUne limite de cinq envois par visiteur toutes les dix minutes, plus un champ honeypot caché que seuls les robots remplissent.
Des secrets hors du codeLes identifiants e-mail sont stockés dans une configuration d’environnement sécurisée sur nos serveurs de développement et de production, jamais dans le contrôle de source.

Étape 3 : une vraie page 404 et des redirections

Les pages manquantes affichent désormais notre page 404 avec un vrai statut 404, pour que les moteurs de recherche n’indexent pas les liens cassés. Les anciennes adresses du site précédent redirigent définitivement vers leurs nouvelles pages, et ajouter une redirection tient en une ligne dans une liste.

Étape 4 : le prérendu pour le SEO

C’était l’étape la plus importante. Les pages Claude Design sont des modèles remplis par JavaScript dans le navigateur. Google s’en sort, mais Bing, les aperçus LinkedIn, les robots d’IA comme ChatGPT, Perplexity et Claude, et la plupart des outils SEO voyaient des espaces réservés bruts entre accolades au lieu de titres et de texte.

Rendre une fois, à la publicationUn script Playwright ouvre chaque page de sitemap.xml dans un navigateur Chrome invisible, attend la fin du rendu et enregistre le résultat en HTML finalisé, avec titres, descriptions, liens canoniques et données structurées.
Rien ne change pour les visiteursLe modèle d’origine est conservé dans la page et remis en place avant le démarrage du JavaScript du site, donc le menu, les filtres, le changement de thème et le formulaire fonctionnent exactement comme avant.
Les éléments personnels sont exclusLa fenêtre des cookies, la note sur le poids de la page et le compteur de visites ne sont pas enregistrés dans le HTML, car ils diffèrent pour chaque visiteur.
Un filet de sécuritéLa publication échoue si une page contient encore un espace réservé non rempli, donc un site à moitié rendu ne peut jamais être mis en ligne.
Si un robot ne peut pas le lire, ça n’existe pas. Le prérendu a rendu chaque page lisible par tous les robots.

Étape 5 : la publication en un clic

Mettre à jour le site tient désormais en deux actions :

1. ExporterTélécharger le site depuis Claude Design en zip et l’enregistrer dans un dossier design-drop du projet.
2. PublierCliquer sur Publier dans Visual Studio. Le build décompresse le site dans wwwroot, l’optimise, prérend chaque page, le déploie sur IIS et le met en ligne via Cloudflare. Toute erreur arrête la publication, donc le site en ligne n’est jamais laissé à moitié à jour.

Les étapes supplémentaires s’exécutent automatiquement à chaque build Release, donc le débogage normal reste rapide. La seule configuration ponctuelle consiste à installer Node.js dans l’environnement de développement et à laisser la première publication télécharger le navigateur de Playwright.

Étape 5a : l’alternative en équipe, Git et un runner

Publier depuis Visual Studio convient à une petite équipe. Si plusieurs personnes travaillent sur le site, publiez plutôt vers un dépôt Git et installez un runner sur votre serveur, comme un runner auto-hébergé GitHub Actions ou GitLab. À chaque envoi de modifications, le runner compile, prérend et déploie le site automatiquement, donc tout le monde travaille sur la même source et chaque version est tracée.

Étape 6 : ajuster avec Lighthouse

Nous avons lancé Lighthouse dans une fenêtre de navigation privée et collé le rapport dans les deux outils. Claude Design a corrigé le côté contenu : la langue de la page, un H1 en page d’accueil et la taille des images. Claude Cowork a corrigé le côté serveur : cache longue durée avec noms de fichiers versionnés, script principal non bloquant, React servi depuis notre propre serveur, Google Tag Manager chargé après la page, et scripts minifiés à environ la moitié de leur taille d’origine.

Performance83 → 91
Accessibilité92 → 96
SEO100
Affichage du contenu principal4,0 s → 2,4 s

Conseils pour faire de même

Donnez une seule tâche à chaque outilLaissez l’outil de design gérer les pages et le contenu, et l’outil de code gérer le serveur. Ne laissez pas les deux modifier les mêmes fichiers.
Transmettez par écritDe courts briefs Markdown dans le dossier du projet ont gardé les deux côtés synchronisés et sont devenus notre documentation.
Gardez un fichier de notes permanentUn fichier CLAUDE.md avec les règles de travail, comme « chaque nouvelle page doit être dans sitemap.xml », vous évite de vous répéter à chaque session.
Prérendez dès le premier jourSi vos pages sont construites dans le navigateur, prérendez-les à la publication. C’est la différence entre un joli site et un site qu’on trouve.
Faites échouer la publication bruyammentDes contrôles automatiques qui bloquent une mauvaise publication valent plus que n’importe quelle quantité de tests manuels.
Testez comme un visiteurVérifiez le site en ligne dans une fenêtre privée, sur votre téléphone et dans le Post Inspector de LinkedIn. Les aperçus en cache et les copies CDN périmées piègent tout le monde.

Ce que cela signifie pour nos clients

Ce site est volontairement simple : peu de pages, modifiées par ceux qui l’ont construit. Pour les clients qui ont besoin d’éditeurs, de workflows et d’intégrations, Umbraco reste la bonne réponse. Mais la même approche, avec l’IA pour le travail de routine et des personnes expérimentées qui relisent chaque modification, s’applique désormais aussi à nos projets clients. C’est plus rapide, moins cher, et cela laisse à nos développeurs plus de temps pour les problèmes qui ont besoin d’eux.

Si vous souhaitez de l’aide pour créer quelque chose de similaire sur votre propre environnement .NET et IIS, contactez-nous.

Besoin d’un plan ? Parlons-en.

Dites-nous ce que vous construisez. Nous vous dirons honnêtement quelle plateforme convient.

Démarrer la conversation →