 installation et configuration du serveur web cherokee cherokee serveur web gérant php via phpcgi ainsi que ssl principaux atouts plus performant que apache du moins sur le papier plus léger que apache moins de chose inutile que des chose de base interface de configuration web complète et relativement bien faite principaux defaults encore en développement pas de version stable mais utilisable utilise phpcgi avec tous les problème que cela peut apporter site officiel http wwwcherokeeprojectcom prérequis en fonction de l usage openssl phpcgi mysql postgress ldap ffmpeg python rrdtool il éxiste de paquets pour la majorité des distributions mais qui ne sont pas forcément à jour avec la version officielle etant donné le caractère en développement du serveur il est recommander d utiliser la dernière version stable qui est actuellement la 101 pour cet atelier afin que tout le monde ait la même version on utilisera les sources que l on va compiler on récupère les sources sur le site officiel on décompresse avec la commande tar zxvf cherokee09944targz on rentre dans le répertoire cd cherokee09944 on exécute un configure help pour connaitre les option de compilation on compile avec configure prefix opt cherokee execprefix opt cherokee puis si tout ce passe bien et que les options voulus sont bien activé on fait un make on se logue en root et make install ou sudo make install on ajoute le chemin à la variable path avec export path path usr bin bin sbin usr sbin usr bin perlbin site usr bin perlbin vendor usr bin perlbin core opt cherokee bin opt cherokee sbin export temporaire l ajouter dans le bashrc pour qu il soit permanant ou etc profile ou autres en fonction de la distribution on démare ensuite le serveur d administration avec cherokeeadmin par default la connection à l administration n est possible qu avec localhost on peut ajouter l option suivi de l ip à partir de laquelle on se connecte ou juste b pour autoriser toutes les connections un mot de pass est généré un simple copier coller au bon endroit permet de se connecter à l administration dans un navigateur web on ouvre http domaineltd 9090 l interface est en python elle est francisé mais pas complètement on peut lancer le serveur via l interface et faire tous les réglages possible avec il n est pas recommandé d éditer le fichier de configuration et de toutes façons ça ne sert à rien il n y a pas d option en plus la page d accueil permet de voir l état du serveur ainsi q un graphique d utilisation du serveur lorsque rrdtool est installé et activé général permet de configurer le réseau les permissions ou les différents ports à écouter on peut également activer ou nom les graphiques d utilisation du serveur dans l onglet réseau serveur virtuel permet la configuration des différents domaines attachés au serveur sources d information permet de configurer les programmes extérieurs comme php ruby ou python icônes et types mime se passe de commentaires avancé permet des réglages plus fin en matière de performance ou de chemin de configuration de fonctionneme et autres comme l indique le warning il faut bien savoir ce que l on fait avant de toucher cette partie je vous invite à consulter la documentation officielle pour plus d informations exemple installation d un site fonctionnant avec php et mysql on clic sur serveurs virtuels puis sur ajouter un nouveau serveur virtuel on rentre son nom ou surnom et le chemin depuis la racine vers le dossier contenant le site et entrée pour valider une nouevelle entrée est créer en cliquant dessus on peut configurer plus spécifiquement ce nouveau site l onglet basics permet de configurer le nom du serveur son chemin ainsi que les index on rentre dans ce champ indexphp l onglet host match permet de spécifier différents nom d hôte attaché à ce site soit un nom soit une ip il est également possible d utiliser l urlrewriting nous verrons plus loin comment dans notre cas sélectionner wildcards et donné votre domaine domaineltd ou pour nous testlocalhost l onglet behavior ou comportement permet entre autre d ajouter des languages comme php en utilisant assistant puis langue puis en sélectionnant php et enfin runwizard on configure le serveur pour qu il utilise phpcgi cet assistant permet aussi de configurer diférents projets cms ou tâches on peut ainsi configurer très facilement drupal symfony django ou ruby on rails l onglet personnal web permet de configure les répertoire des utilisateurs comme peut le faire apache on peut ensuite gérer les logs de manière indépendante pour chaque site ou dans le même fichier avec les 2 onglets suivant enfin l onglet sécurité permet de configurer une connection ssl il suffit de cliequer sur sauvegarder pour enregistrer les modifications  serveurs  