Aller au contenu principal
Gaprod

Node.js sur cPanel

Déployez une application Node.js sur votre hébergement cPanel Gaprod grâce à l'outil Setup Node.js App intégré.

Mis à jour le 28 janvier 2026

Présentation

cPanel propose l'outil Setup Node.js App qui permet d'héberger des applications Node.js directement sur votre hébergement mutualisé. Vous pouvez déployer des API Express, des applications Next.js en mode serveur, ou tout autre projet Node.js.

Versions Node.js disponibles

Gaprod propose plusieurs versions LTS de Node.js (18, 20, 22). La version recommandée pour les nouveaux projets est Node.js 22 LTS. Vous pouvez changer de version depuis l'interface cPanel sans affecter les autres applications.

Créer une application Node.js

  1. Accéder à Setup Node.js App

    Dans cPanel, cherchez la section Logiciels et cliquez sur Setup Node.js App.

  2. Créer une nouvelle application

    Cliquez sur le bouton Créer une application (ou Create Application). Un formulaire de configuration s'affiche.

  3. Configurer l'application

    Renseignez les paramètres de votre application :

    • Version Node.js : sélectionnez la version requise par votre projet (ex. : 22 LTS)
    • Mode d'application : choisissez Production ou Development
    • Répertoire de l'application : le dossier qui contiendra votre code source (ex. : monapp — ce dossier sera créé dans votre répertoire home, pas dans public_html)
    • URL de l'application : le domaine ou sous-domaine sur lequel votre application sera accessible (ex. : app.votredomaine.fr)
    • Fichier de démarrage : le point d'entrée de votre application (ex. : server.js ou index.js)

    Cliquez sur Créer pour valider.

  4. Vérifier la création

    Après création, l'application apparaît dans la liste avec son statut (Arrêtée au départ). Le dossier spécifié a été créé dans votre répertoire home.

Déployer votre code

  1. Téléverser les fichiers de l'application

    Transférez les fichiers de votre application dans le répertoire créé par cPanel. Vous pouvez utiliser :

    • SFTP (avec FileZilla ou Cyberduck) : connexion sécurisée, idéale pour les gros projets
    • Gestionnaire de fichiers cPanel : pour des modifications ponctuelles
    • Git : pour un déploiement automatisé (voir le guide Déploiement avec Git)

    Ne téléversez pas le dossier node_modules/ — il sera généré sur le serveur.

  2. Installer les dépendances

    Dans cPanel → Setup Node.js App, cliquez sur l'icône Éditer de votre application. En bas de la page, cliquez sur Run NPM Install pour installer les dépendances listées dans votre package.json.

    Cette opération peut prendre quelques minutes selon le nombre de dépendances.

    Accès SSH pour plus de contrôle

    Vous pouvez aussi installer les dépendances via SSH pour avoir plus de retours en cas d'erreur. Connectez-vous en SSH, naviguez vers le dossier de l'application et exécutez npm install.

  3. Configurer les variables d'environnement

    Toujours dans la page d'édition de l'application, la section Variables d'environnement vous permet de définir les variables ENV nécessaires (connexion BDD, clés API, etc.) sans avoir à créer un fichier .env manuellement.

    Cliquez sur Ajouter une variable et renseignez le nom et la valeur de chaque variable.

  4. Démarrer l'application

    De retour dans la liste des applications, cliquez sur le bouton Démarrer (icône triangle). L'application démarre et est maintenant accessible via l'URL configurée.

    Vérifiez le statut : il doit passer à En cours d'exécution.

Configurer un sous-domaine pour l'application

Si vous avez configuré votre application sur app.votredomaine.fr, assurez-vous que ce sous-domaine existe.

  1. Créer le sous-domaine dans cPanel

    Dans cPanel → DomainesSous-domaines, créez le sous-domaine app pour votre domaine. cPanel crée automatiquement un dossier et une entrée DNS.

  2. Vérifier le proxy

    L'outil Setup Node.js App configure automatiquement un proxy Apache/LiteSpeed qui redirige les requêtes vers le port interne de votre application Node.js. Vous n'avez pas à configurer ce proxy manuellement.

Gérer l'application

Redémarrer après une mise à jour

Après avoir modifié votre code ou mis à jour les dépendances, redémarrez l'application depuis cPanel → Setup Node.js App → bouton Redémarrer.

Consulter les logs

Les logs de votre application Node.js sont accessibles via SSH ou dans cPanel → JournauxErreurs. Configurez votre application pour écrire les logs dans un fichier dédié :

// Dans votre server.js
const fs = require('fs');
const logStream = fs.createWriteStream('./app.log', { flags: 'a' });
console.log = (msg) => logStream.write(`${new Date().toISOString()} ${msg}\n`);

Arrêter et supprimer une application

Pour arrêter une application sans la supprimer, cliquez sur le bouton Arrêter. Pour la supprimer complètement, cliquez sur l'icône Supprimer — les fichiers du projet ne sont pas supprimés automatiquement.

Exemple : Déployer une API Express

Voici un exemple minimal de server.js pour une API Express :

const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;

app.use(express.json());

app.get('/', (req, res) => {
  res.json({ message: 'API Gaprod opérationnelle' });
});

app.listen(PORT, () => {
  console.log(`Serveur démarré sur le port ${PORT}`);
});

Et le package.json correspondant :

{
  "name": "mon-api",
  "version": "1.0.0",
  "main": "server.js",
  "scripts": {
    "start": "node server.js"
  },
  "dependencies": {
    "express": "^4.18.0"
  }
}

N'utilisez pas le port 80 ou 443 directement

Sur un hébergement mutualisé, vous ne pouvez pas écouter sur les ports 80 ou 443 directement. cPanel se charge du proxy. Utilisez un port interne (3000, 8080, etc.) — la variable process.env.PORT est automatiquement définie par cPanel.

Étapes suivantes

Votre application Node.js est déployée et accessible. Pour aller plus loin :

  • Configurez un certificat SSL pour sécuriser votre sous-domaine
  • Mettez en place un déploiement automatique avec Git
  • Optimisez les performances avec des variables d'environnement NODE_ENV=production

Besoin d'aide supplémentaire ?

Notre support technique est disponible du lundi au vendredi pour répondre à vos questions.