Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| caf4422d22 |
34
Readme.md
34
Readme.md
@@ -4,31 +4,26 @@
|
|||||||
|
|
||||||
Monter un serveur apache multi instance en utilisant l'archi apache
|
Monter un serveur apache multi instance en utilisant l'archi apache
|
||||||
|
|
||||||
|
Cette instance va:
|
||||||
## Architecture
|
* écouter sur le port 8801
|
||||||
|
* tourner avec l'identité du compte/groupe site1
|
||||||
Chaque vhost est servi par une instance apache dédiée écoutant sur un port distinct.
|
* documentroot: /srv/site1/www
|
||||||
|
* errorlog: /srv/site1/logs/error_log
|
||||||
l'instance principale écoute sur 80 et 443 et fait office de reverse proxy + ssl offloading. Elle se contente de rediriger la requète vers la bonne instance en fonction du vhost appelé
|
* accesslog: /srv/site1/logs/access_log # format combined
|
||||||
|
|
||||||
## Mise en oeuvre
|
## Mise en oeuvre
|
||||||
|
|
||||||
l'étude du fichier d'unité _/usr/lib/systemd/system/httpd@.service_ nous permet de deviner qu'il est possible de créer plusieurs instances d'apache en déposant des fichiers **nom**.conf dans /etc/httpd/conf et de les gérer via l'unité httpd@**nom**.service
|
Copier le fichier /usr/share/doc/httpd/instance.conf comme /etc/httpd.conf/*site1*.conf
|
||||||
|
|
||||||
Le fichier /etc/httpd.conf/**nom**.conf va s'appuyer sur /usr/share/doc/httpd/instance.conf
|
Adapter ce fichier pour répondre aux objectifs ci-dessus
|
||||||
|
|
||||||
On peut s'appuyer pour le contenu de ce fichier sur la variable HTTPD_INSTANCE
|
|
||||||
|
|
||||||
Il est donc _PRESQUE_ possible de rajouter une nouvelle instance à partir du vhost à héberger (par ex plop.fr)
|
|
||||||
- création du compte utilisateur et du group "plop.fr", rep perso /srv/plop.fr
|
|
||||||
- copie du fichier de conf d'une instance existante dans /etc/httpd/conf/plop.fr.conf
|
|
||||||
- changer le n° de port dans le fichier de conf
|
|
||||||
- lancer la nouvelle instance
|
|
||||||
|
|
||||||
|
Il est possible de vérifier la syntaxe du fichier via la commande
|
||||||
|
```bash
|
||||||
|
export HTTPD_INSTANCE=site1 ; httpd -tf /etc/httpd/conf/site1.conf
|
||||||
|
```
|
||||||
## Gestion du service
|
## Gestion du service
|
||||||
|
|
||||||
on utilise l'unité httpd@**nominstance**.service avec systemctl
|
on utilise l'unité httpd@**site1**.service avec systemctl
|
||||||
|
|
||||||
|
|
||||||
Pour que instance1 soit relancé avec l'instance principale:
|
Pour que instance1 soit relancé avec l'instance principale:
|
||||||
|
|
||||||
@@ -40,5 +35,6 @@ Y ajouter:
|
|||||||
ReloadPropagatedFrom=httpd.service
|
ReloadPropagatedFrom=httpd.service
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Configuration du serveur frontal
|
||||||
|
|
||||||
|
Il suffit de définir un VirtualHost qui va rediriger toutes les requètes reçues sur l'instance concernée, en utilisantl les directives _proxypass_ et _proxypassreverse_
|
||||||
|
|||||||
Reference in New Issue
Block a user