...
Afin de publier esup-signature de manière securisée, il est possible de mettre un frontal Apache à l'aide du module mod_proxy.
Installer préalablement Apache2
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
sudo apt update
sudo apt install apache2 |
Pour ce faire installer apache puis activer le mod_proxy :
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
a2enmod proxy proxy_http proxy_ajp Donne : Enabling module proxy. Considering dependency proxy for proxy_http: Module proxy already enabled Enabling module proxy_http. Considering dependency proxy for proxy_ajp: Module proxy already enabled Enabling module proxy_ajp. To activate the new configuration, you need to run: systemctl restart apache2 |
Redémarre Apache pour prendre en compte les changements :
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
systemctl restart apache2 |
Voici maintenant un exemple de configuration apache qui va rediriger les requetes http vers https puis faire proxy vers l'application esup-signature
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
<VirtualHost *:80> ServerName esup-signature.univ-ville.fr ServerAlias esup-signature ServerAdmin system@univ-ville.fr ServerSignature Off RewriteEngine On RewriteRule ^(.*) https://esup-signature-demo.univ-rouenville.fr$1 [L,R] </VirtualHost> <VirtualHost *:443> ServerName esup-signature.univ-rouenville.fr ServerAlias esup-signature ServerAdmin systeme@univ-rouenville.fr ServerSignature Off SSLEngine on SSLCertificateFile /etc/pki/tls/certs/crt SSLCertificateKeyFile /etc/pki/tls/private/key SSLCertificateChainFile /etc/pki/tls/certs/cacert SSLverifyclient none ProxyPreserveHost On #ProxyPass / ajp://localhost:6009/ ttl=10 timeout=3600 loadfactor=100 retry=1 # ou ProxyPass / http://localhost:8080/ ttl=10 timeout=3600 loadfactor=100 retry=1 # avec proxy http (et non ajp), il faut ajouter le X Forward RequestHeader set "X-Forwarded-Proto" expr=%{REQUEST_SCHEME} RequestHeader set "X-Forwarded-SSL" expr=%{HTTPS} ProxyPreserveHost On </VirtualHost> |
...
| Info |
|---|
Pour gérer plus facilement les sources sur le serveur d'exploitation il est conseillé d'utiliser git. Le dépôt d'origine d'esup-signature se trouve sur github https://github.com/EsupPortail/esup-signature. Le dépôt fonctionne ainsi :
Des tags sont créés pour chaque version importante du code voir : Change log , https://github.com/EsupPortail/esup-signature/tags |
Clonage
Comme expliqué dans la documentation d'installation, il est préférable de cloner le dépôt git sur le serveur qui héberge esup-signature. Pour cela on commence par faire :
...
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
git tag --sort=-v:refname | head -n 10 |
(--sort=-v:refname permet de lister dans l'ordre de version de tag la plus récente en premier, head -n 10= pour n'avoir que les 10 derniers tag)
Il faut de plus s'assurer que toutes les modifications de code ont bien été sauvegardées ("commitées") :
...
| Remarque |
|---|
Pour que le système d'archivage soit activé, il faut mettre le paramètre enable-scheduled-cleanup à true |
Les demandes restent consultables depuis esup-signature qui fait, alors, la passerelle avec l'espace d'archivage.
( Après archivage, si l'utilisateur supprime complètement la demande depuis l'interface d'ESUP-Signature, le document ne sera plus visible depuis l'interface, mais il reste disponible dans l'espace d'archivage. )
Pour consulter la taille de la base depuis la console psql :
...
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
psql esupsignature;
VACUUM FULL; |
Pour voir ce qui se déroule vous pouvez rendre VACUUM plus verbeux :
| Bloc de code | ||||
|---|---|---|---|---|
| ||||
VACUUM FULL VERBOSE; |