Fait avec Chinaski

Hypnotoad : la configuration fournie

Le dépôt fournit install/hypnotoad.conf, préconfiguré pour les déploiements offline/EOTW/LAN : le mode « un seul serveur, HTTP simple » :

workers => 2,
graceful_timeout => 20,
pid_file         => 'hypnotoad.pid',

Les commentaires de la config portent trois guides importants :

  • Choix d'écoute : 0.0.0.0:8080 convient là où la machine est le point d'accès (LAN, point-à-point, installations offline) ; utilisez une adresse de carte réseau spécifique (par ex. 192.168.1.5:8080) pour limiter quel réseau peut atteindre l'admin.
  • La posture de sécurité sans proxy : le CMS lit la vraie adresse du pair TCP sur les connexions non-loopback et ignore entièrement X-Forwarded-For ; ainsi la limitation de débit et les verrouillages de connexion fonctionnent sans configuration. Cependant : il n'y a pas de TLS dans ce mode, donc les identifiants sont transmis en clair ; la config recommande explicitement un VPN ou un accès borné par pare-feu sur les réseaux qui ne sont pas de confiance.
  • Variables avant le démarrage : CHINASKI_SECRET=<secret> et (pour l'offline) CHINASKI_AIRGAP=1 dans l'environnement quand vous démarrez hypnotoad cms.pl.

Le jumeau dans l'application (CHINASKI_LISTEN / CHINASKI_WORKERS)

Les mêmes réglages sont définissables dans le chemin de code de l'application : CHINASKI_LISTEN (défaut http://127.0.0.1:8080) définit l'adresse d'écoute pour une exécution hypnotoad sans config fichier, et CHINASKI_WORKERS (défaut 2) définit le nombre de workers. Quand vous exécutez sans fichier de config (la recette EOTW standard), ces variables d'env sont l'interface.

Ce qui est fourni, ce que ça fait

  • workers : combien de workers de construction de pages répondent aux requêtes (c'est un paramètre prefork de Mojolicious, distinct des workers de rendu CHINASKI_JOBS du builder du site).
  • graceful_timeout : la borne de drainage de chaque rechargement USR2.
  • pid_file : où le PID du master est stocké (utilisé pour les rechargements sans interruption et l'arrêt propre).
Lisez ce site en