Deblan blog

Outil de création d’un espace web Apache et PHP

Dans mon activité personnelle et professionnelle, je suis amené à créer des espaces d’hébergement de sites web principalement écrits en PHP.

Il y a quelques années, j’ai écris un script en shell qui posait des questions et générait des fichiers de configuration pour Apache et PHP puis relançait ces services. Il a ensuite évolué et générait également les utilisateurs unix et affinait les permissions. Le principal problème du script est que d’un serveur à l’autre, il fallait mettre des coups de hache dans le code pour l’adapter.

Cette semaine, j’ai entamé une refonte complète du code. Au fur et à mesure du développement, j’ai rendu pas mal de choses configurables et je pense qu’il est fonctionnel sur des environnements relativement différents des miens.

Je vous présente donc vhost-manager, c'est un projet libre et est toujours orienté vers la génération de vhost Apache et de pools PHP FPM. Il faut make, gcc, wget pour l'installer et sh, whiptail et php sont nécessaires à son utilisation.

vhost-manager

Le code source est disponible ici. Le projet se configure via un fichier de variables et j'ai conservé le principe des questions/réponses pour générer les fichiers.


  • Nono
    • ,
    • Hello, Je passais par la et j'ai remarqué que tu avais partout "recommanded" quand c'est en fait "recommended" (y compris dans tes screenshots).

      Question (tant qu'à faire) Pourquoi les menu ncurses au dela du coté visuel ? (J'ai tendance à essayer d’éviter pour le coté difficile à scripter)

  • Simon
    • ,
    • Bonjour Nono,

      La faute a été corrigée dans le code et je vais mettre à jour les screenshots. Merci en tout cas :)

      Je trouve Ncurses intéressant car :

      • c'est sympa visuellement qu'un machin comme https://upload.deblan.org/u/2019-08/5d43ec25.jpg
      • les différents types d'écrans qui peuvent être affichés (champ texte, fichier, listes à choix, gauge) apporte de l'ergonomie
      • la gestion des inputs clavier sont bien mieux gérés que les outils comme read en shell
  • MG
    • ,
    • Bonjour, Ca a l'air super sympa ce script pour un newbe comme moi :-) J'aurais bien aimé l'avoir lorsque j'ai commencé à faire mes différents sites. J'ai une petite question : est ce que le script gère les permissions un peu plus poussées pour les accès aux sites ? Je m'explique. En ce moment, je voulais rendre un de mes sites uniquement accessible via une machine, et en interdire l'accès pour tout le monde. Je galère un peu avec les "order deny,allow" et les "require ip patatipatata" ! Cordialement

  • Simon
    • ,
    • Bonjour,

      Il ne fait rien de tout ça. Il génère des fichiers de configurations standards à mes critères pour un avoir démarrer un site web avec ou sans PHP. S'il y a des configurations particulières, c'est manuellement qu'il faudra les traiter. Cependant, il n'est pas impossible de faire évoluer le script pour intégrer plus de choses mais il faudra mettre la main dans le code :)

  • Simon
    • ,
    • Certainement oui, mais il en fait beaucoup trop et je ne veux surtout pas avoir de webmin sur mes serveurs.


Ajouter un commentaire

Votre commentaire - Vous pouvez utiliser du markdown [?]