# EDUOS — Installation sur hébergement OVH (mutualisé)

Déploiement de la plateforme sur **eduos.orelle-consulting.fr**, avec une base
**MySQL OVH** (comme pour STRATEGOS).

Durée : ~30 minutes. Aucun accès SSH requis (mais mentionné quand utile).

---

## Vue d'ensemble

```
Compte OVH (FTP)
└── eduos/                     ← dossier de l'application (à créer)
    ├── public/                ← RACINE WEB du sous-domaine (docroot)
    │   ├── index.php
    │   ├── .htaccess
    │   ├── .ovhconfig
    │   └── assets/
    ├── src/                   (hors web — protégé)
    ├── config/config.php      (identifiants BD à renseigner)
    └── sql/                   (schéma + données)
```

Le sous-domaine `eduos.orelle-consulting.fr` pointera sur `eduos/public`.
Ainsi, `src/`, `config/` et `sql/` ne sont **jamais** accessibles par le web.

---

## Étape 1 — Créer la base de données MySQL

1. Manager OVH → votre hébergement **orelley.cluster027.hosting.ovh.net**
   → onglet **Bases de données**.
2. **Créer une base de données** → type **MySQL**, version 8.
3. Notez précieusement les informations affichées :
   - **Serveur** (hôte), ex. `orelleyxxxx.mysql.db`
   - **Nom de la base** (souvent identique au login), ex. `orelleyxxxx`
   - **Utilisateur**
   - **Mot de passe** (défini à la création)
   - **Port** : `3306`

> C'est exactement la même logique que pour STRATEGOS : la base est hébergée
> chez OVH, on s'y connecte via l'hôte `…mysql.db` (et non `localhost`).

---

## Étape 2 — Créer le sous-domaine eduos.orelle-consulting.fr

1. Onglet **Multisite** → **Ajouter un domaine ou sous-domaine**.
2. Renseignez :
   - **Sous-domaine** : `eduos.orelle-consulting.fr`
   - **Dossier racine** : `eduos/public`   ← **important : bien pointer sur `/public`**
   - Cochez la génération du **certificat SSL** (HTTPS) si proposé.
3. Validez. OVH crée l'entrée DNS ; la propagation peut prendre quelques minutes
   à quelques heures.

---

## Étape 3 — Téléverser les fichiers (FTP)

1. Récupérez vos accès **FTP-SSH** (onglet du même nom dans le Manager).
2. Avec un client FTP (FileZilla, WinSCP…), connectez-vous.
3. À la racine du compte, **créez un dossier `eduos`**.
4. Téléversez **tout le contenu** de l'application dans `eduos/`
   (les dossiers `public`, `src`, `config`, `sql` et les fichiers `.md`).

> Vérifiez que les fichiers cachés sont bien transférés :
> `public/.htaccess` et `public/.ovhconfig`. Dans FileZilla :
> menu *Serveur → Forcer l'affichage des fichiers cachés*.

---

## Étape 4 — Renseigner les identifiants de la base

Éditez le fichier **`eduos/config/config.php`** et remplacez les valeurs par
défaut par celles de l'étape 1 :

```php
define('DB_HOST', getenv('EDUOS_DB_HOST') ?: 'orelleyxxxx.mysql.db');   // hôte OVH
define('DB_PORT', getenv('EDUOS_DB_PORT') ?: '3306');
define('DB_NAME', getenv('EDUOS_DB_NAME') ?: 'orelleyxxxx');            // nom de la base
define('DB_USER', getenv('EDUOS_DB_USER') ?: 'orelleyxxxx');           // utilisateur
define('DB_PASS', getenv('EDUOS_DB_PASS') ?: 'VOTRE_MOT_DE_PASSE');    // mot de passe
```

(Modifiez uniquement le texte après `?:`.)

---

## Étape 5 — Importer le schéma et les données

1. Manager OVH → **Bases de données** → **phpMyAdmin** (bouton d'accès).
2. Connectez-vous avec l'utilisateur de la base.
3. Sélectionnez votre base à gauche, onglet **Importer** :
   - importez d'abord **`sql/schema.sql`**,
   - puis **`sql/seed.sql`** (données de démonstration — facultatif).

---

## Étape 6 — Vérifier la version de PHP

Le fichier `public/.ovhconfig` demande déjà PHP 8.3. Vous pouvez aussi le
vérifier dans le Manager (onglet **Informations générales** → version PHP).
Toute version **≥ 8.1** convient.

---

## Étape 7 — Première connexion

Ouvrez **https://eduos.orelle-consulting.fr**

Comptes de démonstration (mot de passe `eduos2026`) :

| Identifiant | Rôle | Établissement |
|-------------|------|---------------|
| `admin.alpha` | Direction + Administration | École Alpha |
| `superadmin`  | Super-administrateur | (choix à la connexion) |

---

## Étape 8 — Sécuriser (IMPORTANT avant tout usage réel)

1. **Changer les mots de passe de démonstration.**
   - Générez un hash : ouvrez **https://eduos.orelle-consulting.fr/genhash.php?p=VOTRE_NOUVEAU_MDP**
     (ou en SSH : `php eduos/public/genhash.php 'VOTRE_NOUVEAU_MDP'`).
   - Copiez le hash affiché.
   - Dans phpMyAdmin, table `users`, modifiez la ligne voulue :
     collez le hash dans la colonne `password_hash`.
2. **Supprimez `public/genhash.php`** du serveur immédiatement après usage.
3. Si vous ne voulez pas des données de démo, videz les tables (ou réimportez
   seulement `schema.sql` sur une base neuve) et créez votre propre établissement,
   votre compte administrateur et vos rôles.

---

## Dépannage

| Symptôme | Cause probable / solution |
|----------|---------------------------|
| Page blanche / erreur 500 | Identifiants BD erronés dans `config/config.php`, ou version PHP < 8.1. |
| « Connexion à la base impossible » | Hôte, base, utilisateur ou mot de passe incorrects (étape 4). |
| Les liens (ex. /apprenants) renvoient 404 | Le `.htaccess` n'a pas été téléversé, ou le dossier racine ne pointe pas sur `/public`. |
| Les styles ne s'affichent pas | Vérifiez que `public/assets/` a bien été transféré. |
| Voir le détail d'une erreur | Ajoutez temporairement `putenv('EDUOS_DEBUG=1');` en haut de `config/config.php`, puis retirez-le. |

---

*ORELLE Consulting — Un esprit numérique.*
