Système de site

Code privé à usage personnel

Mai 2019

Il y a environ 15 ans, j'avais un cms perso et basé dessus, j'avais fait quelques sites pour mon père collectionneur.

A part de brèves mises à jour, il restait à ce jour 4 sites tournant en php 5.4 sur un vieux hébergement OVH. Avec PHP 7, les sites commencaient vraiment à être poussiéreux et il fallait bon gré mal gré que je m'y remette pour faire un truc simple pour mon père et qui puisse tenir dans le temps.

Tant qu'à m'y remettre je me suis dit que j'allais faire l'effort de mutualiser les différents besoins des sites en 1 seul système facile à déployer et peu gourmand.

Conception

  • PHP 7.2+
  • Mini framework basé sur des briques solides:
    • arnapou/pfdb
    • monolog/monolog
    • symfony/cache
    • symfony/event-dispatcher
    • symfony/http-foundation
    • symfony/routing
    • twig/twig
  • Build du système dans un fichier .phar facile à déployer (utilisation du projet bien fichu Box project)
  • Le système intègre une gestion de Lazy loading de services.
  • Pas de base de donnée externe, simples fichiers à plat yaml avec caching.

Les sites legacy couverts qui existent encore :

Tant qu'à faire j'ai carrément migré mon site perso arnapou.net sur ce système en 1 soirée.

Le code est stocké sur un repo GitHub privé donc à ce stade je n'ai pas grand chose à partager. Le plus important ce sont les briques mises en commun et l'intérêt du build de .phar

Le fichier .phar fait 790Ko compressé en GZ, donc c'est plutôt léger.