Aide pour écriture hook nginx

Bonjour

Mon serveur YunoHost

Matériel: Olimex LIME 2 auto hébergement derrière freebox
Version de YunoHost: * (https://yunohost.org) 11.0.11 (stable).
J’ai accès à mon serveur : En SSH | Par la webadmin
Êtes-vous dans un contexte particulier ou avez-vous effectué des modificiations particulières sur votre instance ? : non / oui
Si oui, expliquer:
Si votre requête est liée à une applicatio, précisez son nom et sa version: app v1.0~ynh

Description du problème

J’aurais besoin d’un conseil sur le concept des hooks. Ai lu les liens du forum mais j’avoue que je n’ai pas tout saisi

En ce moment, j’ai

cat /etc/nginx/conf.d/default.d/redirect_to_admin.conf 
location / {
	return 302 https://crust.ovh ;
}

Afin qu’en cas de page non trouvé il me renvoie à la racine et non la page d’administration

C’est donc à la place de la configuration par défaut qui est

cat /etc/nginx/conf.d/default.d/redirect_to_admin.conf 
location / {
    return 302 https://$http_host/yunohost/admin;
}

Ce qui me vaut dans le diagnostic un éternel

=================================
System configurations (regenconf)

[WARNING] Configuration file /etc/nginx/conf.d/default.d/redirect_to_admin.conf appears to have been manually modified.

  • This is probably OK if you know what you’re doing! YunoHost will stop updating this file automatically… But beware that YunoHost upgrades could contain important recommended changes. If you want to, you can inspect the differences with ‘yunohost tools regen-conf nginx --dry-run --with-diff’ and force the reset to the recommended configuration with ‘yunohost tools regen-conf nginx --force’

Ayant vu le sujet sur les hook je suis hyper intéressé

Pour créer dans mon cas un hook, quelle est la marche à suivre ?

D’avance merci :wink:

Pouet

Faut créer un script bash dans /etc/yunohost/hooks.d/conf_regen en respectant la bonne syntaxe de nommage ( Hooks | Yunohost Documentation ).

A mon avis t’as deux choix :

  • Soit tu passes la ligne return 302 [...] (voir tout le bloc) en commentaire et tu réécris ce dont tu as besoin (pratique pour un debug rapide sans faire un regenconf)
  • Soit tu remplaces directement le string avec la commande sed (mais tu perds l’info de départ si jamais t’as besoin de débuguer).

La solution 1, tu peux tenter un truc style : sed -i 's/^/#/' /etc/nginx/conf.d/default.d pour mettre en commentaire chaque ligne, puis echo ce que tu veux à la place derrière.

La solution 2 tu peux tenter un truc genre sed -i 's/$http_host\/yunohost\/admin;/crust.ovh ;/g' /etc/nginx/conf.d/default.d/redirect_to_admin.conf

OK
Merci de ta réponse
ça fonctionne donc un peu comme un rc.local anciennement
Par contre faut que je finisse par un restart de nginx pour que ce soit pris en compte ?

Un reload devrait suffire, yunohost service reload_or_restart nginx pour être tranquil.

Edit : Ah, dans le hook ? Je me demande si regen-conf ne reload pas directement le service. A tester.

OK merci je teste cela asap :wink:
Bonne soirée !

J’ai édité au moment où t’as posté D:

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.