abonnel-siteweb/data/pages/informatique/serveur/web-linux-apache/install-lutim.txt

130 lines
5.3 KiB
Plaintext
Raw Permalink Normal View History

2024-01-07 10:02:35 +01:00
====== Installer Lutim ======
Lutim est codé en Perl, pour le faire fonctionner il est nécessaire dinstaller Carton, un gestionnaire de modules Perl.
<code>
sudo cpan Carton
</code>
Pour créer les aperçus des images après upload, il est nécessaire dinstaller le logiciel ImageMagick et le module Perl qui correspond.
<code>
sudo apt-get install perlmagick
</code>
Créez un compte utilisateur ''lutim'' ainsi que le dossier ''/var/www/lutim'' ou ''/home/lutim/www'' dans lequel seront copiés les fichiers avec les droits daccès correspondants.
<code>
useradd lutim
groupadd lutim
mkdir -p /home/lutim/www
chown -R lutim:lutim /home/lutim
</code>
Téléchargez les fichiers de la dernière version sur le dépôt officiel (« Download zip » en bas à droite ou bien en ligne de commande avec git), copiez son contenu dans le dossier /var/www/lutim et attribuez les droits des fichiers à lutilisateur lutim
<code>
sudo apt-get install git
cd /home/lutim/www
sudo git clone https://git.framasoft.org/luc/lutim.git
chown lutim:lutim -R /home/lutim/www
</code>
Connectez-vous avec lutilisateur lutim : ''su lutim -s /bin/bash'' et lancez la commande dinstallation des dépendances depuis le dossier ''/home/lutim/www''
<code>
cd /home/lutim/www
su lutim -s /bin/bash
carton install
</code>
Maintenant que tout est prêt, modifiez le fichier de configuration de Lutim lutim.conf avec votre éditeur de texte préféré sur le modèle du fichier lutim.conf.template.
Par défaut le logiciel est configuré pour écouter sur le port 8080 de ladresse 127.0.0.1 (localhost) et avec lutilisateur www-data quil faut donc ici remplacer par lutim
cp lutim.conf.template lutim.conf
vim lutim.conf
Lensemble des paramètres sont facultatifs à lexception du paramètre contact (pensez bien à le configurer et à le décommenter) mais il peut être utile de chiffrer systématiquement les images : always_encrypt => 1
Lutim en tant que service
À présent, le serveur tournera lorsque quon lancera en tant que root cette commande :
carton exec hypnotoad script/lutim
Pour éviter de devoir relancer le serveur à la main à chaque redémarrage du serveur, on va donc lancer Lutim sous forme de service. Il faut pour ça copier le script utilities/lutim.init dans le fichier /etc/init.d/lutim, le rendre exécutable puis copier le fichier utilities/lutim.default dans /etc/default/lutim.
cp utilities/lutim.init /etc/init.d/lutim
cp utilities/lutim.default /etc/default/lutim
Il faut maintenant modifier /etc/default/lutim pour y mettre le chemin dinstallation de notre Lutim (/var/www/lutim si vous navez pas changé le chemin préconisé par ce tutoriel)
vim /etc/default/lutim
chmod +x /etc/init.d/lutim
chown root:root /etc/init.d/lutim /etc/default/lutim
4 Pailler
À ce stade, si tout sest bien passé, lorsque vous exécutez la commande service lutim start, Lutim est pleinement fonctionnel. Vous navez quà vous rendre sur lURL http://127.0.0.1:8080 pour pouvoir lutiliser.
Nous allons maintenant configurer Lutim pour le rendre accessible depuis un nom de domaine avec Nginx (vous pouvez également utiliser Apache ou Varnish puisque seule la fonctionnalité de proxy inverse nous intéresse).
Nginx
Installez le paquet :
apt-get install nginx
Créez le fichier de configuration de votre domaine /etc/nginx/sites-available/votre-nom-de-domaine pour y mettre ceci (en remplaçant « votre-nom-de-domaine ») et le port 8080 si vous lavez changé dans la configuration de Lutim :
server {
listen 80 ;
server_name votre-nom-de-domaine ;
root /var/www/lutim/public ;
# Important pour la confidentialité des utilisateurs
access_log off ;
error_log /var/log/nginx/lutim.error.log ;
# Paramètre important ! À adapter en fonction de la configuration de Lutim
client_max_body_size 40M ;
location ~* ^/(img|css|font|js)/ {
try_files $uri @lutim ;
add_header Expires "Thu, 31 Dec 2037 23:55:55 GMT" ;
add_header Cache-Control "public, max-age=315360000" ;
}
location / {
try_files $uri @lutim ;
}
location @lutim {
proxy_pass http://127.0.0.1:8080 ;
proxy_set_header Host $host ;
proxy_set_header X-Real-IP $remote_addr ;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for ;
proxy_set_header X-Remote-Port $remote_port ;
proxy_redirect off ;
}
}
Activez votre fichier :
ln -s /etc/nginx/sites-available/votre-nom-de-domaine /etc/nginx/sites-enabled/votre-nom-de-domaine
Enfin, relancez nginx : service restart nginx
5 Tailler et désherber
La personnalisation de votre instance de Lutim passe par lédition à la main des fichiers css, images et javascript qui se trouvent dans le dossier public et des fichiers du dossier templates ou public pour les fichiers statiques..
Les fichiers de langues se trouvent dans le dossier lib/Lutim/I18N.
Pour pouvoir personnaliser et observer vos modifications en direct, il vous faudra stopper temporairement le service service lutim stop et le démarrer avec la commande :
carton exec morbo script/lutim
Le serveur écoutera alors sur http://127.0.0.1:3000 mais vous pouvez le faire écouter sur le même port quavec hypnotoad pour continuer à passer par Nginx pendant votre développement :
carton exec morbo script/lutim --listen=http://127.0.0.1:8080