# Réussir un cahier des charges de maintenance de site internet

La maintenance d’un site internet est bien plus qu’une simple formalité technique : elle représente l’assurance de la pérennité, de la performance et de la sécurité de votre présence digitale. Dans un environnement numérique où les cybermenaces évoluent quotidiennement et où les attentes utilisateurs en matière de rapidité et de disponibilité ne cessent d’augmenter, disposer d’un cadre structuré pour gérer la maintenance applicative devient indispensable. Un cahier des charges bien conçu permet de clarifier les responsabilités, d’anticiper les risques et d’établir une relation de confiance avec votre prestataire. Pourtant, nombreuses sont les entreprises qui sous-estiment cette étape cruciale, se contentant d’accords verbaux ou de contrats trop vagues. Cette négligence peut coûter cher : temps d’arrêt prolongés, pertes de données, dégradation du référencement ou encore litiges contractuels. Investir dans la rédaction d’un cahier des charges complet constitue donc un investissement stratégique pour sécuriser votre activité en ligne.

Définir le périmètre technique et fonctionnel de la maintenance applicative

La première étape dans l’élaboration d’un cahier des charges de maintenance consiste à définir précisément le périmètre d’intervention. Cette phase de cartographie technique permet d’identifier tous les composants qui nécessiteront une attention régulière. Sans cette vision d’ensemble, vous risquez d’oublier des éléments critiques qui pourraient compromettre la stabilité de votre plateforme. Le périmètre doit englober non seulement les éléments visibles de votre site, mais également toute l’infrastructure sous-jacente qui en assure le fonctionnement. Cette démarche vous aidera à anticiper les coûts et à dimensionner correctement les ressources nécessaires pour maintenir votre site dans des conditions optimales.

Cartographie des technologies du stack technique : CMS WordPress, PrestaShop ou solutions custom

Votre site repose sur un ensemble de technologies qu’il convient de documenter exhaustivement. Si vous utilisez un CMS comme WordPress, vous devez spécifier la version exacte installée, le thème utilisé (premium ou sur mesure), ainsi que l’historique des personnalisations apportées. Pour un site e-commerce sous PrestaShop, précisez également les modules de paiement intégrés, les connecteurs logistiques et les systèmes de gestion des stocks. Les solutions développées sur mesure nécessitent une documentation encore plus détaillée : langage de programmation (PHP, Python, Node.js), framework utilisé, architecture de la base de données et patterns de développement employés. Cette cartographie technique permet au prestataire de maintenance d’évaluer sa capacité à intervenir efficacement et d’identifier d’éventuelles obsolescences technologiques.

Inventaire des modules, plugins et extensions tierces à maintenir

Les plugins et extensions constituent souvent le maillon faible de la sécurité d’un site. Un inventaire complet doit lister chaque extension installée, même celles qui sont désactivées, en précisant leur version, leur éditeur, leur fonction et leur dernière date de mise à jour. Certaines extensions abandonnées par leurs développeurs représentent des vulnérabilités potentielles qu’il faudra soit remplacer, soit sécuriser par des mesures compensatoires. Dans votre cahier des charges, classez ces modules selon leur criticité : ceux qui sont indispensables au fonctionnement (paiement, formulaires), ceux qui améliorent l’expérience utilisateur (cache, compression d’images) et ceux qui sont accessoires. Cette hiérarchisation aidera votre prestataire à prioriser ses interventions en cas

d’incident ou de mise à jour majeure. Pensez aussi à préciser dans votre cahier des charges qui est responsable de la mise à jour de ces plugins (prestataire, équipe interne) et à quelle fréquence un audit des extensions devra être réalisé (trimestriel, semestriel, annuel).

Identification des API externes et services SaaS intégrés

La plupart des sites professionnels s’appuient aujourd’hui sur un écosystème d’API et de services SaaS : passerelle de paiement (Stripe, PayPal), CRM (HubSpot, Salesforce), outils marketing (Mailchimp, Sendinblue), solutions d’authentification ou de chat en ligne. Dans votre cahier des charges de maintenance, listez précisément chaque service : fournisseur, type d’intégration (API REST, Webhook, SDK), version de l’API utilisée, clés d’accès et environnement concerné. Précisez également les contraintes de ces services : quotas d’appels, limitations horaires, dépendance métier (par exemple, impossibilité de facturer en cas de panne de l’API de paiement).

Cette cartographie des API externes permet d’anticiper les impacts en cas de changement de version ou de rupture de service. Indiquez clairement si vous attendez de votre prestataire qu’il assure une veille active des changements d’API (dépréciation de endpoints, nouvelles versions obligatoires) et qu’il mette à jour les intégrations avant les dates butoirs. Enfin, définissez les scénarios de repli à prévoir : mode dégradé en cas d’indisponibilité du CRM, paiement différé si la passerelle de paiement est hors service, désactivation temporaire de certaines fonctionnalités non critiques.

Recensement des environnements : production, staging, développement et pré-production

Un dispositif de maintenance sérieux repose rarement sur un seul environnement de production. Pour limiter les risques, vous devez recenser l’ensemble des environnements existants : développement, recette, pré-production, production. Pour chacun, précisez l’hébergement utilisé, l’URL, le niveau de sécurité (accès restreint, VPN, authentification), la fréquence de synchronisation des données et les droits d’accès des différentes équipes. Ce recensement évite des situations fréquentes où un correctif est testé sur un environnement obsolète, puis se comporte différemment en production.

Indiquez dans votre cahier des charges comment doivent se dérouler les déploiements : passage obligatoire par l’environnement de staging, jeu de tests minimum à réaliser, validations nécessaires côté client avant mise en ligne. Précisez aussi les règles de gestion des données personnelles sur ces environnements de test : anonymisation des bases de production, purge automatique des données sensibles, conformité RGPD. Plus votre chaîne d’environnements est claire, plus la maintenance applicative sera fluide, prévisible et sécurisée.

Établir les SLA et métriques de performance attendues

Une fois le périmètre technique posé, le cahier des charges de maintenance doit définir des SLA (Service Level Agreements) précis. Ces engagements contractuels encadrent la disponibilité du site, les délais d’intervention et les niveaux de performance à respecter. Sans ces indicateurs, comment savoir si votre prestataire remplit réellement sa mission ? En formalisant des métriques mesurables, vous sécurisez votre activité et disposez de repères objectifs pour évaluer la qualité du service rendu.

Temps de rétablissement RTO et objectif de point de restauration RPO

Deux notions sont essentielles pour encadrer la gestion des incidents : le RTO (Recovery Time Objective) et le RPO (Recovery Point Objective). Le RTO correspond au temps maximal acceptable pour rétablir le service après une panne majeure. Le RPO définit, lui, la quantité maximale de données que vous acceptez de perdre, exprimée en durée (par exemple : 1 heure de données). Dans votre cahier des charges, vous devez fixer ces objectifs en fonction de l’importance du site pour votre activité : un site e-commerce n’aura pas les mêmes exigences qu’un simple site institutionnel.

Concrètement, vous pouvez par exemple exiger un RTO de 2 heures et un RPO de 30 minutes pour un site transactionnel en forte activité. Ces indicateurs doivent ensuite être alignés avec la stratégie de sauvegarde et l’architecture serveur : backups suffisamment fréquents, capacité à restaurer rapidement, procédures de bascule documentées. Plus vos exigences sont élevées, plus l’infrastructure et l’organisation devront être robustes – et le budget en conséquence. Il est donc crucial de trouver l’équilibre entre continuité d’activité et coûts de maintenance.

Taux de disponibilité garanti et plages de maintenance planifiée

Le taux de disponibilité (ou uptime) est un indicateur central de la qualité de service. De nombreuses entreprises visent aujourd’hui un taux supérieur à 99,5 % sur l’année, voire 99,9 % pour les plateformes critiques. Dans votre cahier des charges, indiquez clairement le niveau de disponibilité attendu, en précisant si certains créneaux horaires (soirées, week-ends, périodes de soldes) nécessitent une vigilance particulière. Évitez les formulations vagues du type « site disponible la plupart du temps » : exigez des chiffres.

Définissez également les plages de maintenance planifiée pendant lesquelles des interruptions temporaires pourront être tolérées (par exemple, le mardi entre 23h et 2h). Ces créneaux permettent de réaliser des mises à jour structurantes sans impacter votre cœur d’activité. Le cahier des charges doit préciser les modalités de communication associées : délai de prévenance avant une opération planifiée, message d’information à afficher aux utilisateurs, canal de notification privilégié pour le client (email, Slack, téléphone).

Métriques web core vitals : LCP, FID et CLS

La performance perçue par l’utilisateur est devenue un critère-clé, d’autant plus que Google intègre les Core Web Vitals dans son algorithme de classement. Un bon cahier des charges de maintenance ne se limite donc pas à la disponibilité : il doit aussi encadrer la rapidité et la stabilité d’affichage des pages. Les trois indicateurs principaux sont le LCP (Largest Contentful Paint), le FID (First Input Delay) et le CLS (Cumulative Layout Shift). Pour chacun, fixez des seuils cibles, par exemple un LCP inférieur à 2,5 secondes et un CLS inférieur à 0,1 sur les pages stratégiques.

Vous pouvez exiger dans le contrat de maintenance un audit régulier des Web Core Vitals et un plan d’optimisation continu : réduction du poids des images, mise en cache avancée, optimisation du code JavaScript, amélioration du temps de réponse serveur. En fixant ces objectifs dès le cahier des charges, vous évitez les discussions ultérieures du type « le site est lent mais ce n’était pas dans le périmètre ». Vous donnez aussi un cadre clair au prestataire pour prioriser les actions ayant le plus d’impact sur l’expérience utilisateur et le référencement naturel.

Protocoles de monitoring via GTmetrix, new relic ou datadog

Pour contrôler ces engagements, il est indispensable de définir les outils et protocoles de monitoring à mettre en place. Mentionnez dans le cahier des charges si vous souhaitez utiliser des solutions comme GTmetrix ou PageSpeed Insights pour mesurer la vitesse des pages, ou des outils d’APM (Application Performance Monitoring) comme New Relic ou Datadog pour suivre en détail le comportement de l’application et de la base de données. Précisez les indicateurs à surveiller en continu : temps de réponse, taux d’erreurs 5xx, saturation CPU, mémoire, latence des requêtes SQL.

Le cahier des charges doit aussi décrire la manière dont ces alertes sont gérées : seuils de déclenchement, canaux de notification (email, SMS, Slack), astreintes éventuelles pour les interventions en dehors des heures ouvrées. Vous pouvez par exemple exiger que tout taux d’erreur supérieur à 2 % sur 5 minutes déclenche une alerte et une analyse dans l’heure. En formalisant ces règles, vous évitez les situations où une panne passe inaperçue pendant plusieurs heures, avec à la clé une perte de chiffre d’affaires ou une dégradation de votre image de marque.

Planifier les mises à jour de sécurité et correctifs critiques

La maintenance de site internet ne se limite pas à « réparer en cas de casse ». Elle implique une gestion proactive de la sécurité, en particulier dans un contexte où les vulnérabilités logicielles (CVE) augmentent chaque année. Votre cahier des charges doit donc encadrer de manière très précise la politique de mise à jour du serveur, du CMS et des différents composants critiques. L’objectif ? Réduire au minimum la fenêtre de vulnérabilité, tout en sécurisant les procédures pour éviter les régressions fonctionnelles.

Gestion des CVE et patches de vulnérabilités PHP, MySQL et serveur apache

Le socle serveur (PHP, MySQL/MariaDB, Apache ou Nginx) constitue la fondation technique de votre site. Une faille exploitée à ce niveau peut compromettre l’ensemble de votre infrastructure. Dans le cahier des charges, précisez l’engagement de votre prestataire sur la veille de sécurité : sources surveillées (CVE, bulletins éditeurs, CERT-FR), fréquence de revue, niveau de criticité déclenchant une action prioritaire. Il est par exemple pertinent d’exiger que toute vulnérabilité critique (score CVSS > 8) fasse l’objet d’une analyse sous 48 heures et d’un plan de patch défini dans la foulée.

Décrivez aussi la procédure type de mise à jour du stack serveur : tests de compatibilité avec le CMS et les extensions, déploiement progressif par environnement (développement, staging, production), possibilité de rollback en cas de problème. Comme pour une révision de voiture, mieux vaut un calendrier régulier de petites mises à jour qu’un « gros chantier » tous les 3 ans, risqué et coûteux. Votre cahier des charges doit donc inclure une fréquence minimale de mises à jour de sécurité, même en l’absence de faille médiatisée.

Procédure de mise à jour du noyau CMS et compatibilité thème-plugin

Pour un site sous WordPress, PrestaShop ou tout autre CMS, les mises à jour du noyau constituent un moment délicat. Elles corrigent souvent des failles critiques, mais peuvent aussi casser des fonctionnalités si votre thème ou vos plugins ne sont pas compatibles. Dans votre cahier des charges de maintenance, décrivez précisément la marche à suivre : tests obligatoires en environnement de staging, vérification des fonctionnalités clés (parcours d’achat, formulaires, espace client), validation client avant passage en production.

Précisez également la stratégie de versionnement à adopter : mise à jour immédiate pour les correctifs de sécurité mineurs, attente de quelques jours pour les versions majeures afin de laisser le temps aux éditeurs de plugins de s’adapter. Vous pouvez exiger un rapport de mise à jour détaillant les évolutions majeures, les impacts potentiels et les éventuels correctifs complémentaires à prévoir. L’objectif est d’éviter la situation, malheureusement fréquente, où une simple mise à jour du CMS entraîne une série de dysfonctionnements invisibles… jusqu’au jour où un client se plaint.

Stratégie de backup incrémentiel et restauration via duplicator ou UpdraftPlus

Aucune politique de maintenance ne peut être considérée comme sérieuse sans une stratégie de sauvegarde robuste. Dans votre cahier des charges, détaillez la fréquence des backups (quotidienne, horaire), le type de sauvegarde (complète ou incrémentielle), le lieu de stockage (même serveur, stockage externe, cloud) et la durée de rétention. Pour un site WordPress, des outils comme Duplicator ou UpdraftPlus permettent d’automatiser ces sauvegardes et de simplifier les restaurations en cas de problème.

Définissez aussi les scénarios de restauration et les délais acceptables : en combien de temps le site doit-il pouvoir être remis en ligne après une corruption de base ou une erreur de manipulation ? Précisez la fréquence des tests de restauration (au moins une à deux fois par an) pour vérifier que les sauvegardes sont réellement exploitables. Sans ces tests, vous risquez de découvrir trop tard que vos backups sont incomplets ou inutilisables, comme un extincteur vide au moment d’un incendie.

Structurer la maintenance corrective et évolutive

Au-delà de la sécurité, votre cahier des charges doit organiser la manière dont seront gérées les demandes au quotidien : correction de bugs, petites améliorations, évolutions plus structurantes. On parle ici de maintenance corrective (résolution d’anomalies) et de maintenance évolutive (ajout ou modification de fonctionnalités). Sans cadre, ces demandes s’accumulent dans les emails ou les conversations informelles, créant frustrations et malentendus des deux côtés.

Commencez par définir les catégories d’incidents et d’évolutions : bug bloquant (site indisponible ou impossibilité de commander), bug majeur (fonction clé dégradée), bug mineur (anomalie visuelle ou de confort), évolution simple (ajout d’un champ, d’un bloc de contenu), évolution complexe (nouveau module, refonte partielle). Pour chaque catégorie, indiquez les délais de prise en charge et de résolution cibles. Par exemple : prise en compte d’un incident critique sous 1 heure en jours ouvrés, résolution sous 4 heures, avec contournement provisoire si nécessaire.

Précisez également le mode de facturation des demandes évolutives : forfait d’heures de maintenance, tickets au coup par coup, régie mensuelle. Le cahier des charges doit expliquer comment les demandes sont priorisées (enjeu business, urgence, effort estimé) et qui, côté client, valide les arbitrages. En structurant ainsi la maintenance, vous évitez de transformer votre prestataire en simple « pompier du web » et vous inscrivez votre site dans une logique d’amélioration continue.

Définir les protocoles de reporting et gouvernance projet

Un bon contrat de maintenance repose autant sur la technique que sur la gouvernance. Sans rituels de suivi ni reporting clair, vous risquez d’avoir le sentiment de « ne pas savoir ce qui se passe » sur votre site, surtout lorsque tout fonctionne bien… jusqu’au jour où un problème survient. Le cahier des charges doit donc formaliser les outils, les livrables et les instances de pilotage qui permettront de garder une vision claire et partagée de l’activité de maintenance.

Dashboard de suivi via jira, trello ou monday.com

Pour centraliser les demandes et suivre leur traitement, il est recommandé de s’appuyer sur un outil de ticketing ou de gestion de projet : Jira, Trello, Asana, Monday.com ou équivalent. Dans votre cahier des charges de maintenance, indiquez la solution retenue, qui en assure l’administration et quels accès devront être fournis à vos équipes. Précisez la structure minimale des tickets : titre clair, description, priorité, captures d’écran, URL concernée, navigateur utilisé, impact business estimé.

Vous pouvez exiger la mise en place d’un dashboard synthétique affichant les principaux indicateurs : nombre de tickets ouverts/fermés, temps moyen de résolution, répartition par type d’incident, volume d’heures consommées. Ce tableau de bord, accessible en temps réel, vous permettra de piloter objectivement la relation avec votre prestataire et d’identifier les zones de friction récurrentes (plugin problématique, serveur sous-dimensionné, process interne à revoir).

Livrables attendus : rapports mensuels, audits trimestriels et bilans annuels

En complément du suivi au fil de l’eau, le cahier des charges doit prévoir des livrables réguliers. Un rapport mensuel peut par exemple récapituler les interventions réalisées, les incidents majeurs, les optimisations de performance et les heures consommées sur le forfait de maintenance. Un audit trimestriel permettra d’aller plus loin en analysant les tendances : augmentation du trafic, évolution des Core Web Vitals, risques de sécurité identifiés, dette technique accumulée.

Enfin, un bilan annuel peut servir de base à la feuille de route de l’année suivante : priorisation des évolutions structurantes, arbitrage budgétaire, réflexion sur d’éventuelles refontes partielles. Indiquez dans votre cahier des charges le format souhaité pour ces livrables (PDF, présentation, réunion de restitution), leur niveau de détail et les interlocuteurs concernés côté client. Ce cadre favorise une relation partenariale et évite que la maintenance se résume à une succession d’actions ponctuelles sans vision d’ensemble.

Documentation technique : wiki interne, changelog et procédures d’urgence

Un autre pilier souvent oublié de la maintenance est la documentation. Sans documentation à jour, chaque incident devient plus long à résoudre et chaque changement de prestataire se transforme en parcours du combattant. Dans votre cahier des charges, exigez la tenue d’un wiki technique (sur Confluence, Notion ou tout autre outil) décrivant l’architecture, les principaux modules, les intégrations externes et les procédures de déploiement.

Demandez également la mise à jour systématique d’un changelog pour chaque mise en production : fonctionnalités modifiées, correctifs appliqués, éventuels impacts connus. Enfin, prévoyez des procédures d’urgence écrites : qui appeler en priorité, quelles actions techniques enclencher en cas de piratage, de panne serveur ou de perte de données. Comme un plan d’évacuation dans un bâtiment, ces procédures ne servent pas tous les jours, mais le moment venu, elles font gagner des minutes précieuses.

Anticiper la scalabilité et optimisation des ressources serveur

La maintenance d’un site internet ne se limite pas à maintenir l’existant en l’état. Un site est vivant : votre trafic évolue, vos campagnes marketing se succèdent, vos offres changent. Votre cahier des charges doit donc intégrer une réflexion sur la scalabilité de votre infrastructure, c’est-à-dire sa capacité à encaisser des pics de charge et à accompagner votre croissance sans dégradation de performance. Négliger ce volet, c’est comme construire une boutique sans prévoir ce qui se passera le jour où une foule de clients se présentera à l’entrée.

Configuration CDN cloudflare ou KeyCDN pour la distribution de contenu

Un CDN (Content Delivery Network) comme Cloudflare ou KeyCDN permet de rapprocher vos contenus statiques (images, scripts, feuilles de style) de vos utilisateurs grâce à un réseau mondial de serveurs. Résultat : des temps de chargement réduits, une meilleure expérience utilisateur et une charge moindre sur votre serveur principal. Dans votre cahier des charges de maintenance, indiquez si l’utilisation d’un CDN est requise, quels types de contenus doivent être servis via ce réseau et comment la configuration devra être gérée (règles de cache, purge automatique lors des mises à jour, gestion du HTTPS).

Vous pouvez également demander à votre prestataire d’activer et de maintenir les fonctionnalités de sécurité proposées par ces solutions : protection DDoS, pare-feu applicatif (WAF), filtrage des bots malveillants. Précisez les responsabilités de chacun : qui gère les DNS, qui valide les règles de sécurité, qui intervient en cas de blocage injustifié d’un utilisateur légitime. Bien configuré et bien maintenu, un CDN devient un allié puissant pour concilier performance, sécurité et maîtrise des coûts.

Mise en cache avancée : redis, varnish et optimisation base de données

Pour assurer la scalabilité de votre site, la mise en cache joue un rôle central. Au-delà des simples plugins de cache WordPress, votre cahier des charges peut prévoir l’utilisation de solutions plus avancées comme Redis pour le cache d’objets ou Varnish pour le cache HTTP. L’idée est de limiter autant que possible les requêtes coûteuses vers la base de données et le moteur PHP, surtout lors des pics de trafic. Indiquez les technologies privilégiées, les pages à exclure du cache (panier, compte client) et les bonnes pratiques à respecter lors des développements pour ne pas casser ces mécanismes.

Pensez aussi à l’optimisation régulière de la base de données : purge des données obsolètes (logs, révisions, paniers abandonnés anciens), ajout d’index lorsque nécessaire, analyse des requêtes lentes. Dans le cahier des charges, prévoyez des tâches d’optimisation périodiques intégrées au contrat de maintenance, plutôt que de les traiter dans l’urgence lorsque le site commence à ralentir. Comme pour un entrepôt physique, plus vous rangez et optimisez l’espace au fil de l’eau, plus vous évitez l’encombrement et les blocages.

Migration vers infrastructure cloud AWS, google cloud ou OVH

Enfin, votre cahier des charges de maintenance doit envisager la possibilité de faire évoluer votre infrastructure vers des solutions cloud plus flexibles : AWS, Google Cloud, OVHcloud ou autres. Même si cette migration n’est pas prévue à court terme, il est utile de décrire les scénarios possibles : passer d’un hébergement mutualisé à un VPS, d’un VPS à une architecture multi-serveurs, mise en place d’un autoscaling pour absorber les pics de charge, séparation de la base de données sur un service managé.

Précisez les attentes en matière de portabilité : éviter les technologies trop propriétaires qui rendraient une migration ultérieure complexe et coûteuse, documenter la procédure de déploiement pour pouvoir la reproduire sur une nouvelle infrastructure, s’assurer que les sauvegardes sont compatibles avec le futur environnement. En intégrant dès maintenant ces considérations dans votre cahier des charges, vous vous donnez la possibilité de faire évoluer votre site au rythme de votre croissance, sans être prisonnier de choix techniques initiaux mal anticipés.