====== 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. $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=20.04 DISTRIB_CODENAME=focal DISTRIB_DESCRIPTION="Ubuntu 20.04.6 LTS" Il faut un serveur apache, idéalement en version 2.4 $ apache2 -v Server version: Apache/2.4.41 (Ubuntu) Server built: 2023-03-08T17:32:54 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. sudo apt install apache2 python3 pip3 Ensuite on va activer les modules nécessaires à Apache2. sudo a2en mod_rewrite mod_proxy mod_proxy_http Puis on rédémarre le service sudo service apache2 reload ===== 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). cd /var/www/ mkdir site/ cd site/ ===== Installation de NoethysWeb ===== Il faut télécharger la dernière version de NoethysWeb wget https://github.com/Noethys/Noethysweb/archive/refs/heads/main.zip 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é) ====== 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 Require all granted Require all granted Require all granted Options FollowSymlinks AllowOverride all Allow from all Require all granted Options SymLinksIfOwnerMatch DirectoryIndex index.php Require all denied Require all denied Require all granted Options FollowSymlinks AllowOverride all 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 =====Voir aussi===== Dans la rubrique installation-hébergement : * [[autohebergement]] * [[installation_apache]] * [[settings_production_detail]] * [[noethysweb_easy]]