diff --git a/README.md b/README.md index 1d0f660..188861d 100644 --- a/README.md +++ b/README.md @@ -166,14 +166,7 @@ Environment=PYTHONUNBUFFERED=1 WantedBy=multi-user.target ``` -Activer et démarrer le service : -```bash -sudo systemctl daemon-reload -sudo systemctl enable deezer_downloader.service -sudo systemctl start deezer_downloader.service -sudo journalctl -u deezer_downloader.service -f -``` --- @@ -197,6 +190,92 @@ Cela permet à l’utilisateur `nextclouddeezer` d’exécuter des commandes PHP ➡️ Ensuite, dans le `config.ini` du conteneur DeezerDownloader, renseigne le mot de passe de cet utilisateur. +--- + +Bien sûr 👍 Voici ta section corrigée, reformulée et un peu embellie avec des emojis et une mise en forme homogène : + +--- + +## ⚙️ 7. Activer et démarrer le service + +🔁 Recharge systemd, active le service au démarrage et lance-le immédiatement : + +```bash +sudo systemctl daemon-reload +sudo systemctl enable deezer_downloader.service +sudo systemctl start deezer_downloader.service +``` + +📋 Pour vérifier les logs en direct : + +```bash +sudo journalctl -u deezer_downloader.service -f +``` + +--- + +## 🌐 8. Intégrer Deezer Downloader dans l’interface Nextcloud + +1. Ouvre **Paramètres d’administration** → **Sites externes** dans Nextcloud. +2. Clique sur ➕ **Ajouter un nouveau site**. +3. Renseigne l’URL suivante : + + ``` + https://votre.url.fr/deezer/?jwt={jwt} + ``` + + (Remplace `votre.url.fr` par ton domaine ou IP publique.) +4. (Optionnel) Ajoute une **icône personnalisée** pour le menu : + 🖼️ L’image se trouve ici → `doc/deezerDownloader.png` + +💡 Une fois ajouté, le lien apparaîtra directement dans la barre latérale de Nextcloud pour tous les utilisateurs autorisés. + +--- + +Parfait 😎 Voici ta section reformulée, corrigée et embellie avec des emojis et une structure plus claire tout en gardant ton contenu technique inchangé : + +--- + +## 🧠 9. Bonus : configuration du reverse proxy Nginx + +💡 Pour éviter de gérer un énième nom de domaine **et** contourner les problèmes de **CORS**, j’ai simplement ajouté un bloc de configuration dans **le reverse proxy Nginx** qui gère déjà les certificats SSL de **Nextcloud**. + +Voici le **bloc ajouté** à la configuration Nginx de Nextcloud : + +```nginx +location /deezer/ { + set_real_ip_from 192.168.10.8/24; + real_ip_header proxy_protocol; + proxy_pass http://192.168.10.12:5000/; + + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header X-Forwarded-Host $server_name; + proxy_set_header X-Forwarded-Server $host; +} +``` + +🔀 **Explication rapide :** + +* `location /deezer/` → redirige toutes les requêtes Nextcloud vers ton conteneur **DeezerDownloader**. +* `proxy_pass http://192.168.10.12:5000/` → correspond à l’adresse interne de ton service Python. +* Les directives `proxy_set_header` assurent la transmission correcte des en-têtes HTTP et des IP réelles. + +✅ Résultat : tu peux accéder à **DeezerDownloader** directement depuis ton domaine Nextcloud, par exemple : + +``` +https://cloud.mondomaine.fr/deezer/ +``` + +…sans erreur CORS, ni besoin d’un certificat supplémentaire. + + --- # 💻 Développement sous Windows (VS Code) diff --git a/deezer_downloader/cli/deezer-downloader.ini.template b/deezer_downloader/cli/deezer-downloader.ini.template index 2e319df..7e6165a 100644 --- a/deezer_downloader/cli/deezer-downloader.ini.template +++ b/deezer_downloader/cli/deezer-downloader.ini.template @@ -29,7 +29,7 @@ port = 5000 ; if used behind a proxy, specify base url prefix ; url_prefix = /deezer -url_prefix = +url_prefix = /deezer api_root = %(url_prefix)s static_root = %(url_prefix)s/static diff --git a/docs/deezerDownloader.png b/docs/deezerDownloader.png new file mode 100644 index 0000000..9759d17 Binary files /dev/null and b/docs/deezerDownloader.png differ