> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Hébergement de sites web

> Hébergement de sites web professionnel avec performances entreprise, sécurité Cloudflare Premium WAF, CDN mondial gratuit et DNS ultra-rapide. Déploiement automatique, SSL gratuit et prise en charge de tous les frameworks modernes.

<Frame>
  <img src="https://squarecloud.app/banners/fr/sites.png" alt="Vue d'ensemble du service Square Cloud Sites" style={{ borderRadius: "0.2rem" }} />
</Frame>

## Pourquoi choisir Square Cloud ?

Chaque site est servi derrière le réseau mondial de Cloudflare, avec TLS gratuit, un CDN gratuit et une protection DDoS intégrée par défaut, la même périphérie de qualité production que vous déployiez une landing page statique ou une application SSR complète basée sur un framework. Vous configurez un sous-domaine ; nous gérons les certificats, la mise en cache et le routage.

<CardGroup cols={2}>
  <Card title="Périphérie Cloudflare + Square Shield" icon="shield-check">
    Chaque site se trouve derrière le **Cloudflare Premium WAF** avec **Square Shield Enterprise** par-dessus, atténuation DDoS, filtrage des bots et TLS gratuit à renouvellement automatique inclus sans coût supplémentaire.
  </Card>

  <Card title="NVMe + 10 Gbps, isolé" icon="bolt">
    **SSD NVMe entreprise Samsung** et liaisons montantes **10 Gbps**, avec votre application dans un conteneur isolé. Associé à un **CDN mondial gratuit**, les ressources statiques sont mises en cache en périphérie et servies au plus près de chaque visiteur.
  </Card>

  <Card title="DNS géré" icon="globe">
    **DNS automatique avec propagation mondiale rapide**, attachez un domaine personnalisé et Square Cloud gère les enregistrements et les certificats pour vous, sans manipulation DNS manuelle.
  </Card>

  <Card title="Snapshots instantanés" icon="server">
    **Points de restauration en un clic**, inclus gratuitement. Récupérez d'un déploiement défectueux en quelques secondes, sans perte de données et **sans interruption de service**.
  </Card>
</CardGroup>

## Environnements pris en charge

Nous offrons une large compatibilité afin que vous puissiez héberger votre site avec la technologie de votre choix.

### Frameworks

Nous fournissons une prise en charge native des frameworks les plus populaires du marché, garantissant compatibilité et performances.

<Frame>
  <img src="https://squarecloud.app/banners/fr/runtimes.png" alt="Frameworks pris en charge sur Square Cloud Sites" style={{ borderRadius: "0.2rem" }} />
</Frame>

<Info>
  Au-delà des frameworks présentés ci-dessus, notre plateforme offre une **prise en charge universelle** pour pratiquement n'importe quel framework ou bibliothèque. Notre infrastructure flexible s'adapte automatiquement aux besoins spécifiques de votre projet, garantissant la compatibilité avec la technologie que vous avez choisie.
</Info>

### Langages

<CardGroup cols={3}>
  <Card title="JavaScript" icon="node-js" href="../articles/getting-started-with-nodejs" />

  <Card title="Python" icon="python" href="../articles/getting-started-with-python" />

  <Card title="Java" icon="java" href="../articles/getting-started-with-java" />

  <Card title="Rust" icon="rust" href="../articles/getting-started-with-rust" />

  <Card title="Elixir" icon="droplet" href="../articles/getting-started-with-elixir" />

  <Card title="PHP" icon="php" href="../articles/getting-started-with-php" />

  <Card title="Go" icon="golang" href="../articles/getting-started-with-go" />

  <Card title="C#" icon="c" href="../articles/getting-started-with-csharp" />

  <Card title="Ruby" icon="gem" href="../articles/getting-started-with-ruby" />
</CardGroup>

## Écosystème développeur

Optimisez votre flux de travail avec nos outils de développement :

* **Square Cloud CLI :** Gérez vos applications directement depuis le terminal.
* **Extension VSCode :** Intégrez la gestion de l'hébergement dans votre éditeur.
* **GitHub Webhooks :** Configurez des déploiements automatiques basés sur des événements.
* **GitHub Actions :** Automatisez les déploiements via des workflows intelligents.
* **SDK :** Interagissez avec notre API de manière programmatique.

## Comment héberger mon site web ?

<Steps>
  <Step title="Fichier de configuration" icon="file">
    La première étape pour héberger votre site sur **Square Cloud** est de créer un fichier de configuration détaillé. Ce fichier n'est pas un simple document texte, mais un guide complet qui définit les paramètres de votre application sur **Square Cloud**. Il sert de plan architectural pour votre projet sur la plateforme.

    Une fois votre plan obtenu, vous devez créer ce fichier en détaillant chaque paramètre et en le remplissant correctement. Les détails sur la création de ce fichier sont disponibles [ici](https://docs.squarecloud.app/fr/getting-started/config-file) avec un guide étape par étape.
    N'oubliez pas d'inclure les champs suivants dans votre fichier de configuration :

    * **SUBDOMAIN :** Le sous-domaine de votre site.<br />
      Exemple : `SUBDOMAIN=test` (test.squareweb.app)
    * **MEMORY :** La quantité de RAM, avec un **minimum de 512MB**.
  </Step>

  <Step title="Création du fichier ZIP" icon="file-zip">
    Une fois le fichier de configuration prêt, l'étape suivante consiste à préparer votre application pour l'upload. Cela implique de placer les fichiers de l'application et le fichier de configuration Square Cloud dans une archive .zip.

    Cependant, tous les fichiers n'ont pas besoin d'être inclus dans ce .zip. Des fichiers comme `node_modules`, `package-lock.json`, `pyproject.toml`, `poetry.lock` et `__pycache__` ne sont pas nécessaires, car ils peuvent être générés automatiquement côté serveur.
  </Step>

  <Step title="Fichier de dépendances" icon="box">
    Un autre aspect crucial est l'inclusion du fichier de dépendances dans le .zip. Ce fichier indique à la plateforme Square Cloud quelles dépendances installer pour votre projet. Pour un projet Node.js, ce fichier est `package.json`, et pour un projet Python, c'est `requirements.txt`.

    Ces fichiers listent les bibliothèques et paquets nécessaires au bon fonctionnement de votre application. Maintenir ces fichiers à jour est essentiel pour éviter les erreurs d'installation. De plus, il est important de noter que les dépendances natives, telles que `node-fetch` en Node.js et `random` en Python, ne doivent pas être incluses dans ces fichiers, car ce sont des bibliothèques intégrées.
  </Step>

  <Step title="Upload de votre site" icon="arrow-up">
    <Tip>Si vous pouvez définir un `port` dans votre code ou le paramètre `START`, réglez-le toujours sur `port 80`. La seule exception est l'hébergement d'un serveur Lavalink, voir plus [ici](https://docs.squarecloud.app/fr/tutorials/how-to-create-your-lavalink-server).</Tip>
    Après avoir suivi toutes les étapes et configuré votre projet pour Square Cloud, il est temps d'uploader votre site. Rendez-vous sur la page d'upload du site Square Cloud et uploadez votre fichier .zip [ici](https://squarecloud.app/fr/dashboard/new).

    Le processus est simple : sélectionnez votre fichier .zip et cliquez sur le bouton d'upload. Square Cloud lancera le processus de déploiement, installant les dépendances nécessaires et configurant l'environnement en fonction de votre fichier de configuration.

    <Frame>
      <img src="https://cdn.squarecloud.app/docs/articles/dashboard/uploading.gif" alt="Téléversement d'une application vers Square Cloud" style={{ borderRadius: "0.2rem" }} />
    </Frame>
  </Step>
</Steps>
