Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 31/12/2013, à 15:02

αjet

Apache Virtual hosts par dossier?

J'ai un server dans lequel j'heberge differentes applications web, servies par Apache. Actuellement, ces applications sont toutes dans le meme virtual host. Elles sont chacune dans leur dossier propre :
mondomaine.tld/app1
mondomaine.tld/app2

Je souhaite conserver ces URL mais je souhaiterais isoler ces differentes applications. Pour etre clair, je pensais creer un Virtual Host par application pour pouvoir:
* Avoir des access.log dedie par application: c'est plus facile a monitorer individuellement
* Pouvoir faciliter la maintenance de chaque application de maniere individuelle (e.g. arreter un application si necessaire).
* Potentiellement, je pense passer au moins certaines application en mode https. Pour cette raison, je ne souhaite gerer plusieurs sous domaines.

D'apres la doc d'Apache et ce que j'ai trouve jusqu'a present il ne semble pas possible de specifier un dossier dans Server Name d'un vitual host.

L'exemple ci dessous illustre ce que je souhaiterais faire:

NameVirtualHost *:80

<VirtualHost *:80>
ServerName mondomaine.tld/app1
DocumentRoot /www/app1
ErrorLog ${APACHE_LOG_DIR}/app1/error.log
TransferLog ${APACHE_LOG_DIR}/app1/access.log
</VirtualHost>

<VirtualHost *:80>
ServerName mondomaine.tld/app2
DocumentRoot /www/app2
ErrorLog ${APACHE_LOG_DIR}/app2/error.log
TransferLog ${APACHE_LOG_DIR}/app2/access.log
</VirtualHost>

Ext-ce que VirtualHost est la bonne solution pour mon probleme ?

J'ai egalement regarde du cote de VirtualDirectory mais il semble qu'il n'est pas possible de logger separement. Enfin, ce qui concerne les logs. Il semble que je pourrais m'en sortir avec les custom logs, mais ca me semble etre une solution complique: http://httpd.apache.org/docs/2.2/mod/mo … #customlog

Merci d'avance pour vos suggestions. smile


αjet: ça se prononce alfajet, bordel ! | GMT+1 | Viens poueter avec moi, bordel ! | Mes photos | Shaarli | Fluidbuntu-fr

Hors ligne

#2 Le 01/01/2014, à 07:25

J5012

Re : Apache Virtual hosts par dossier?

en pratique c'est la : http://doc.ubuntu-fr.org/tutoriel/virtu … ec_apache2

mais le tuto n'a pas ete revise, et certaines propositions du tuto ne sont pas des reglages dans la ligne mais dans l'experimentation du redacteur ...

pour le log , etant donne que le process apache a des droits voisins admin, il suffit je pense de lui indiquer un chemin+fichier auquel il a acces ... (la fameuse directive customlog peut etre utilisee a la place, precedee de sa directive de format)

Hors ligne

#3 Le 01/01/2014, à 10:13

bruno

Re : Apache Virtual hosts par dossier?

Effectivement ServerName attend un nom de domaine pleinement qualifié (FQDN), cela ne peut donc pas marcher ainsi.
Personnellement j'utiliserai des sous domaines :
ServerName app1.mondomaine.tld

en réglant en conséquence les enregistrements DNS (ou hosts si les sites ne sont accessibles que localement).

#4 Le 02/01/2014, à 15:32

αjet

Re : Apache Virtual hosts par dossier?

Merci pour vos reponses.
Bruno: Comme je l'indique dans mon premier post, je souhaiterais isoler chaque application dans des vhost distincts mais je souhaiterais malgre tout pouvoir les heberger sous le meme domaine, essentiellement pour ne pas casser les liens existants et en vue d'acquisition d'un certificat ssl.

Il semblerait que ces deux besoins (meme domaine & isolation des applications dans des vhosts) soient en contradiction.

Apres avoir cherche davantage dans la doc d'Apache, je pense que je vais utiliser CustomLog pour generer des logs par application.
En ce qui concerne la mise en ligne ou non d'une application, je pense utiliser des alias. Par exemple, je redirige un Alias vers une page de maintenance si je veux mettre un site off.


αjet: ça se prononce alfajet, bordel ! | GMT+1 | Viens poueter avec moi, bordel ! | Mes photos | Shaarli | Fluidbuntu-fr

Hors ligne

#5 Le 02/01/2014, à 21:26

J5012

Re : Apache Virtual hosts par dossier?

Il semblerait que ces deux besoins (meme domaine & isolation des applications dans des vhosts) soient en contradiction.

En ce qui concerne la mise en ligne ou non d'une application, je pense utiliser des alias.

dans apache2, la gestion des alias et celle des vhosts par nom (et pas par ip) a ete reuni dans le meme mecanisme : on n'utilise pas/plus les fichiers de conf d'apache1 qui sont reserves aux anciennes applications (compatibilite ascendante) ...

a la place :
- on cree les fichiers de config dans /etc/apache2/sites-available
- on les active en les liant dans /etc/apache2/sites-enabled
- on evite de mettre les fichiers appliweb dans une section qui demande trop de droits d'acces, l'ideal est de les installer dans un dossier user ...

si tu as un dns, tu mets les noms des vhosts pour la meme ip que le nom principal, sinon c'est le fichier /etc/hosts

Hors ligne

#6 Le 02/01/2014, à 22:15

αjet

Re : Apache Virtual hosts par dossier?

Je pense avoir compris comment gerer des sites et les activer desactiver avec a2ensite & a2dissite.

J5012 a écrit :

- on cree les fichiers de config dans /etc/apache2/sites-available
- on les active en les liant dans /etc/apache2/sites-enabled
- on evite de mettre les fichiers appliweb dans une section qui demande trop de droits d'acces, l'ideal est de les installer dans un dossier user ...

La ou je butte est qu'il me semble pas possible de mettre des applications dans des vhosts separes si je souhaite qu'elle soient hebergees sous le meme domaine (htttp(s)://mondomaine.tld/app1 & htttp(s)://mondomaine.tld/app2, pour reprendre l'exemple donne au debut).

Si tu connais un moyen de contourner cette limitation, je suis preneur. Dans le cas contraire, je vais continuer a les heberger dans un unique vhost.

Merci encore pour ta reponse !


αjet: ça se prononce alfajet, bordel ! | GMT+1 | Viens poueter avec moi, bordel ! | Mes photos | Shaarli | Fluidbuntu-fr

Hors ligne

#7 Le 03/01/2014, à 20:24

Pseudo supprimé

Re : Apache Virtual hosts par dossier?

Et si tu fais un portail, page de garde,  le client au final s'en fout complètement de la manière dont il accède aux diverses applications. C'est toi qui décide comment les présenter. Le fait que mondomaine.tld/app1 ou app2.mondomaine.tld, n'a pas d'importance, que le portail soit par exemple appelé en mondomaine.tld/index.php.
Pour la maintenance simplement, tu as un autre index.php.maintenance.

#8 Le 03/01/2014, à 20:36

αjet

Re : Apache Virtual hosts par dossier?

@Titouan: OK mais:

moi a écrit :

je souhaiterais malgre tout pouvoir les heberger sous le meme domaine, essentiellement pour ne pas casser les liens existants et en vue d'acquisition d'un certificat ssl.

D'ailleurs depuis je me suis fait un certificat avec Startssl, et j'ai pas envie de payer une fortune pour un certificat "wildcard".


αjet: ça se prononce alfajet, bordel ! | GMT+1 | Viens poueter avec moi, bordel ! | Mes photos | Shaarli | Fluidbuntu-fr

Hors ligne

#9 Le 04/01/2014, à 21:23

J5012

Re : Apache Virtual hosts par dossier?

alex63 a écrit :

Je pense avoir compris comment gerer des sites et les activer desactiver avec a2ensite & a2dissite.
.........
La ou je butte est qu'il me semble pas possible de mettre des applications dans des vhosts separes si je souhaite qu'elle soient hebergees sous le meme domaine (htttp(s)://mondomaine.tld/app1 & htttp(s)://mondomaine.tld/app2, pour reprendre l'exemple donne au debut).......

qu'est-ce qui t'empeche de les separer physiquement ? en pratique c'est normalement le cas :
- appli1 dans dossier user/www/appli1
- appli2 dans dossier user/appli2
- appli3 dans dossier user4/www3/appli3
- etc ... dans autant de dossiers avec les droits necessaires et suffisants

- appli1 peut etre accede via le nom url == piwigo pour gerer par ex l'album
- appli2 peut etre accede via le nom url == wpress pour ton blog
- appli3 peut etre accede via le nom url == tinyurl pour les liens raccourcis
- etc ...

Hors ligne