# Mettre en ligne un site ou une application

Votre VPS Ultra a sa propre adresse IPv4 et son adresse IPv6 : vos domaines pointent directement vers elles, et votre serveur reçoit le trafic sur tous les ports que vous ouvrez. Vous servez autant de sites et de domaines que vous le souhaitez.

## 1. Faire pointer votre domaine vers votre serveur

Là où se gère la zone DNS de votre domaine, créez deux enregistrements avec les adresses affichées dans la carte de votre serveur, rubrique **VPS** de votre espace client :

| Type   | Nom                                 | Valeur                            |
| ------ | ----------------------------------- | --------------------------------- |
| `A`    | `@`, `www` ou le sous-domaine voulu | l'**Adresse IPv4** de votre carte |
| `AAAA` | le même nom                         | l'**Adresse IPv6** de votre carte |

Quand la zone DNS de votre domaine est gérée par Simafri, notre équipe pose ces enregistrements pour vous : écrivez-nous. Avant de basculer un site déjà en ligne, demandez-nous aussi d'abaisser la durée de vie (TTL) de l'enregistrement.

Pour vérifier depuis votre ordinateur :

```
dig +short A app.mon-entreprise.com

dig +short AAAA app.mon-entreprise.com
```

## 2. Installer votre serveur web et votre certificat

Deux choix courants sous Linux :

* **Caddy**, qui obtient et renouvelle seul vos certificats HTTPS :

  ```
  apt install caddy
  ```

  puis, dans `/etc/caddy/Caddyfile` :

  ```
  app.mon-entreprise.com {

      reverse_proxy 127.0.0.1:3000

  }
  ```

  et `systemctl reload caddy` ;

* **Nginx** ou **Apache**, avec **Certbot** pour le certificat Let's Encrypt :

  ```
  apt install nginx certbot python3-certbot-nginx

  certbot --nginx -d app.mon-entreprise.com -d www.app.mon-entreprise.com
  ```

  Certbot pose le certificat, ajoute l'écoute sur le port 443 et programme son renouvellement automatique.

Sous Windows Server, **IIS** sert vos sites, et un client ACME comme win-acme y pose et renouvelle vos certificats Let's Encrypt.

## 3. Garder votre application en marche

Une application Node.js, Python, Go ou Java qui tourne en continu se confie à **systemd** : elle démarre avec le serveur et redémarre seule si elle s'arrête. Exemple, dans `/etc/systemd/system/app.service` :

```
[Unit]

Description=Mon application

After=network.target



[Service]

WorkingDirectory=/srv/app

ExecStart=/usr/bin/node server.js

Restart=always

Environment=NODE_ENV=production

User=www-data



[Install]

WantedBy=multi-user.target
```

```
systemctl daemon-reload

systemctl enable --now app

journalctl -u app -f    # suivre ses journaux
```

Docker et Docker Compose s'installent aussi comme sur tout serveur Linux.

## 4. Votre base de données

PostgreSQL, MySQL, MariaDB, Redis ou MongoDB s'installent avec le gestionnaire de paquets, ou depuis le dépôt officiel de l'éditeur. La mémoire garantie de votre VPS Ultra se prête bien à une base exigeante : réglez sa mémoire de travail (`shared_buffers` pour PostgreSQL, `innodb_buffer_pool_size` pour MySQL) en fonction de la mémoire de votre taille.

Gardez votre base à l'écoute de `localhost`, et administrez-la depuis votre ordinateur par un tunnel SSH :

```
ssh -L 5432:localhost:5432 root@app.mon-entreprise.com
```

Votre outil (DBeaver, pgAdmin, TablePlus) se connecte alors à `localhost:5432`.

## Questions fréquentes

### Mon site affiche une erreur de certificat.

Vérifiez dans l'ordre : vos enregistrements `A` et `AAAA` désignent les adresses de votre carte (`dig`), votre serveur web écoute sur les ports 80 et 443 (`ss -tlnp`), votre pare-feu les laisse passer (`ufw status`), et le certificat couvre bien ce nom (`certbot certificates`).

### Puis-je héberger plusieurs sites sur mon VPS Ultra ?

Oui, autant que vous le souhaitez : faites pointer chaque domaine vers vos adresses et ajoutez son bloc à votre serveur web.
