====== Site web de Federez ====== Le site web à l'adresse **federez.net** est hébergé sur [[admin:serveurs:hexagon|hexagon]]. Il est versionné sur GitLab : https://gitlab.federez.net/federez/federez.net. ===== Modifier le site ===== ==== Version courte ==== Modifier la branche ''master'' : git clone git@gitlab.federez.net:federez.net cd federez.net ... git push On pourra utiliser la version de développement sur hexagon dans /srv/dev.federez.net accessible à : https://dev.federez.net/ (avec une authentification LDAP pour garder cette version privée). Se connecter à hexagon pour mettre à jour le site : cd /srv/federez.net sudo git pull ==== Version longue ==== Modifier sa branche '''' : git clone git@gitlab.federez.net:federez.net cd federez.net git checkout -b ... git push -u origin Se connecter à hexagon pour mettre à jour la version de développement : cd /srv/dev.federez.net sudo git checkout sudo git pull Si tout fonctionne, faire la fusion sur son dépôt local (pas sur hexagon !) : git checkout master git merge git pull Enfin, mettre à jour le site sur hexagon : cd /srv/federez.net sudo git pull ===== Configuration du déploiement ===== Le serveur utilise une clé SSH de déploiement pour se connecter à GitLab (voir ''/root/.ssh/id_gitlab'' et ''/root/.ssh/config'' sur hexagon) . C'est pour cette raison que le déploiement est fait avec ''sudo git pull''. La configuration sur GitLab est à l'adresse suivante : https://gitlab.federez.net/federez/federez.net/deploy_keys. Le déploiement est fait via un transfert d'agent SSH, aucune clef n'est présente sur dodecagon (elle n'existait pas sur hexagon). ===== Redirections pour les journées ===== Pour faciliter l'accès à la page consacrée aux journées, http://journees.federez.net et http://2016.federez.net (et les noms correspondant aux autres années) redirigent vers la page pertinente. Pour cela, il faut : * avoir les noms déclarés dans le [[dns|DNS]] ; * avoir le certificat généré par [[letsencrypt]] valide pour ces zones ; * avoir une configuration d'Apache adaptée, telle que décrite ci-dessous. ==== Configuration d'apache ==== La configuration est faite en deux parties, la première dans le fichier ''/etc/apache2/sites-available/000-default.conf'' pour le site en entier (et afin de s'assurer que ce soit le premier VHOST configuré afin que ce soit aussi celui servir par défaut), le reste dans ''/etc/apache2/sites-available/www-journees.conf'' pour la configuration spécifique aux journées. ServerName www.federez.net ServerAlias federez.net DocumentRoot /srv/federez.net/ LogLevel warn ErrorLog ${APACHE_LOG_DIR}/www-error.log CustomLog ${APACHE_LOG_DIR}/www-access.log combined SSLEngine on SSLCertificateFile /etc/letsencrypt/live/federez.net/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/federez.net/privkey.pem Include /etc/letsencrypt/options-ssl-apache.conf Options -Indexes +FollowSymLinks +MultiViews AllowOverride All Require all granted Require all denied Include /etc/apache2/ldap.conf Include /etc/apache2/ldap.conf ServerName journees.federez.net ServerAlias 20??.federez.net RewriteEngine On # Redirections pour les différentes années (de 2000 à 2099) RewriteCond %{HTTP_HOST} ^(20[0-9][0-9])\.federez\.(fr|eu|org|net) RewriteRule ^.*$ https://federez.net/journees/%1/%{REQUEST_URI} [NC,L,R=permanent] # Redirection pour journees.federez.net RewriteCond %{HTTP_HOST} ^journees.federez.net RewriteRule ^.*$ https://federez.net/journees/2017/%{REQUEST_URI} [NC,L,R=permanent] # À mettre à jour tous les ans ^^^^ LogLevel warn ErrorLog ${APACHE_LOG_DIR}/redirection-journees-error.log CustomLog ${APACHE_LOG_DIR}/redirection-journees-access.log combined SSLEngine on SSLCertificateFile /etc/letsencrypt/live/federez.net/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/federez.net/privkey.pem On activera les VHOST pour finir : a2ensite 000-default www-journees apache2ctl gracefull