Noethysweb

Application de gestion multi-activités

Outils pour utilisateurs

Outils du site


installation_apache

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
installation_apache [2023/09/17 11:49] – créée baalthinstallation_apache [2023/12/08 22:39] (Version actuelle) – voir aussi fred.th
Ligne 1: Ligne 1:
 ====== Installation avec Apache2 ====== ====== Installation avec Apache2 ======
  
 +Cette page décrit l'installation de NoethysWeb servie par un serveur Apache2 (Apache2.4) et hébergeant en plus de NoethysWeb un site institutionnel, cette partie étant optionnelle.
 +
 +===== Exigences =====
 +
 +Il faut disposer d'un serveur Linux, la démonstration est faite sur Ubuntu 20.04.
 +<code bash>
 +$ cat /etc/lsb-release
 +DISTRIB_ID=Ubuntu
 +DISTRIB_RELEASE=20.04
 +DISTRIB_CODENAME=focal
 +DISTRIB_DESCRIPTION="Ubuntu 20.04.6 LTS"
 +</code>
 +Il faut un serveur apache, idéalement en version 2.4 
 +<code bash>
 +$ apache2 -v
 +Server version: Apache/2.4.41 (Ubuntu)
 +Server built:   2023-03-08T17:32:54
 +</code>
 +
 +Ainsi que les modules suivants : 
 +  - mod_rewrite
 +  - mod_proxy
 +  - mod_proxy_http
 +
 +Enfin il faut python et pip en version récente.
 +
 +===== Installation =====
 +
 +On commence par installer les paquets nécessaires.
 +
 +<code bash>sudo apt install apache2 python3 pip3</code>
 +
 +Ensuite on va activer les modules nécessaires à Apache2.
 +
 +<code bash>sudo a2en mod_rewrite mod_proxy mod_proxy_http</code>
 +
 +Puis on rédémarre le service
 +
 +<code bash>sudo service apache2 reload</code>
 +
 +===== Création des répertoires =====
 +
 +Il faut créer des répertoires. 
 +Dans le cas présent, nous avons 2 répertoires à la racine de /var/www/.
 +Le répertoire site/ contient NoethysWeb et grav/, le site vitrine (Optionnel).
 +
 +<code bash>cd /var/www/
 +mkdir site/
 +cd site/
 +</code>
 +
 +===== Installation de NoethysWeb =====
 +
 +Il faut télécharger la dernière version de NoethysWeb
 +
 +<code bash>wget https://github.com/Noethys/Noethysweb/archive/refs/heads/main.zip</code>
 +
 +Une fois le fichier télécharger il suffit d'extraire le contenu depuis le répertoire actuel.
 +
 +
 +====== Exemple de fichier (téléchargeable et commenté) ======
 +
 +<file bash exemple-ssl.conf>
 +<IfModule mod_ssl.c>
 +    <VirtualHost *:443>
 +        DocumentRoot /var/www/grav/
 +        # Gestion des alias sur le serveur
 +        # Alias pour l'accès au géstionnaire de base de donné MySQL.
 +        Alias /phpmyadmin /usr/share/phpmyadmin
 +        # Alias des media et des fichiers statiques de NoethysWeb 
 +        Alias /media /var/www/site/noethysweb/media
 +        Alias /static /var/www/site/noethysweb/static
 +        # Alias de la racine du Site créé avec le CMS GRAV (Optionnel)
 +        Alias / /var/www/grav/
 +
 +        # ProxyPreserveHost permet de servir NoethysWeb tel qu'il est exposé par Django 
 +        ProxyPreserveHost On
 +        # Cette route permet la transmission du captcha via apache. 
 +        ProxyPass /captcha http://localhost:8000/captcha 
 +        # Routes spécifiques correspondantes aux URLS paramétrées dans le fichier settings.production.py
 +        ProxyPass /utilisateur http://localhost:8000/utilisateur
 +        ProxyPassReverse /utilisateur http://localhost:8000/utilisateur
 +        ProxyPass /administrateur http://localhost:8000/administrateur
 +        ProxyPassReverse /administrateur http://localhost:8000/administrateur
 +        ProxyPass /portail http://localhost:8000/portail
 +        ProxyPassReverse /portail http://localhost:8000/portail
 +        # Route spécifique à l'outil de gestion des tableaux. 
 +        ProxyPass /select2/fields http://localhost:8000/select2/fields
 +        ProxyPassReverse /select2/fields http://localhost:8000/select2/fields
 +        # Route avertissant l'utilisateur qu'il est bloqué. 
 +        ProxyPass /locked http://localhost:8000/locked
 +        ProxyPassReverse /locked http://localhost:8000/locked 
 +
 +        ServerAdmin webmaster@localhost
 +        
 +        <Directory /var/www/site/noethysweb/media>
 +            Require all granted
 +        </Directory>
 +        <Directory /var/www/site/noethysweb/static>
 +            Require all granted
 +        </Directory>
 +        <Directory /var/www/grav>
 +            Require all granted
 +            Options FollowSymlinks
 +            AllowOverride all 
 +            Allow from all
 +        </Directory>
 +        <Directory /var/www/html>
 +            Require all granted
 +        </Directory>
 +        <Directory /usr/share/phpmyadmin>
 +            Options SymLinksIfOwnerMatch
 +            DirectoryIndex index.php
 +        </Directory>
 +
 +        <Directory /usr/share/phpmyadmin/templates>
 +            Require all denied
 +        </Directory>
 +        
 +        <Directory /usr/share/phpmyadmin/libraries>
 +            Require all denied
 +        </Directory>
 +        
 +        <Directory /var/www/grav/>
 +        Require all granted
 +            Options FollowSymlinks
 +            AllowOverride all
 +        </Directory>
 +        ErrorLog ${APACHE_LOG_DIR}/error_grav.log
 +        CustomLog ${APACHE_LOG_DIR}/access_grav.log combined
 +        ServerName www.mon_association.fr
 +        SSLCertificateFile /etc/letsencrypt/live/polygones-lentilly.fr/fullchain.pem
 +        SSLCertificateKeyFile /etc/letsencrypt/live/polygones-lentilly.fr/privkey.pem
 +        Include /etc/letsencrypt/options-ssl-apache.conf
 +    </VirtualHost>
 +</IfModule>
 +</file>
 +
 +=====Voir aussi=====
 +Dans la rubrique installation-hébergement : 
 +  * [[autohebergement]]
 +  * [[installation_apache]]
 +  * [[settings_production_detail]]
 +  * [[noethysweb_easy]]
installation_apache.1694944164.txt.gz · Dernière modification : 2023/09/17 11:49 de baalth