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 27/02/2013, à 18:26

Wiggum

Sous URL et Virtual Host sous apache

Bonjour à tous,

Je vais essayer d'être le plus explicite possible et ce n'est pas gagné.

J'ai un site toto.societe.fr qui est physiquement dans le répertoire /home/toto/www  , le virtual host est on ne peux plus classique

<VirtualHost *:80>
     ServerAdmin webmaster@societe.fr
     DocumentRoot "/home/toto/www/"
     ServerName toto.societe.fr
</VirtualHost>

Jusqu'à là facile ;-)

Mais j'aimerais également avoir une URL toto.societe.fr/application qui pointerait vers /home/application/www

C'est peut etre stupide mais bien évidemment j'ai essayé

<VirtualHost *:80>
     ServerAdmin webmaster@societe.fr
     DocumentRoot "/home/application/www"
     ServerName toto.societe.fr/application
</VirtualHost>

Ce qui n'est pas une réussite !

Supplément d'informations :
- Pour être précis le document root de application serait plus de l'ordre /home/application/application1/public (et oui ! C'est du Ruby on Rails du coup je ne peux pas juste créer un lien dans /home/toto/www)

Bref N'importe quel indice m'intéresserait ( j'ai un peu bidouillé la valeur ServerPath mais je ne suis même pas sur de l'avoir utilisé correctement)

Merci à tous

Hors ligne

#2 Le 27/02/2013, à 18:42

Maisondouf

Re : Sous URL et Virtual Host sous apache

Qu'est ce que c'est que cette manie de mettre des répertoires Web dans /home ???
Essayes pour rire de créer un utilisateur qui s'appelle "application" et tu vas voir comment ton répertoire va voler en éclats...Bon bref.

Pour ton soucis de redirection, tu te poses un faux problème.
Dans la mesure où le nom de domaine ne change pas et qu'en fait ton souhait est d'accéder à un sous répertoire, Apache le gère avec un alias.
Donc tu mets ça:

<VirtualHost *:80>
     ServerAdmin webmaster@societe.fr
     DocumentRoot "/home/toto/www/"
     ServerName toto.societe.fr
	<Directory /home/toto/www/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all
	</Directory>
 Alias /application /home/application/www
	<Directory /home/application/www/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all
	</Directory>
</VirtualHost>

C'est tout...


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

#3 Le 28/02/2013, à 09:49

Wiggum

Re : Sous URL et Virtual Host sous apache

Merci Maisondouf.

Ce me donne une bonne piste de recherche, ca ne fonctionne pas en l'état mais je pense que c'est dût à l'arborescence de ruby on rails, en adaptant un peu mes chemins ca devrait être ok.

Ta remarque sur les applis et sites web dans le /home m'intéresse grandement car je débute dans l'hébergement et mes pratiques ne sont peut être pas les meilleurs cependant j'ai plusieurs prestataires qui doivent pouvoir développer des applis et des sites web.

Je trouvais plus simple de faire un utilisateurs par projet (accès ssh à chaque projet, plus facile d'expliquer la gestion de chaque projet à l'équipe de maintenance etc...).

Si c'est le mal, je prends tous les conseils que tu pourrais me donner.

Hors ligne

#4 Le 28/02/2013, à 11:06

Maisondouf

Re : Sous URL et Virtual Host sous apache

Un accès ssh donne accès à tout le disque, on ne peut pas le limiter à un répertoire.
Ce type d'accès est normalement réservé à la maintenance du serveur.

Par contre,tu peux mettre en place un accès FTP qui permettra à l'utilisateur de modifier ses fichiers, mais pas d'aller se balader partout.


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

#5 Le 28/02/2013, à 15:07

Wiggum

Re : Sous URL et Virtual Host sous apache

Maisondouf,

Maintenant que j'ai avancé sur la résolution de mon problème le terme exact n'est pas sous url mais sub URI !

Explication  :

Le fournisseur 1 développe son application dans /home/fournisseur1/apptoto
Le fournisseur 2 développe son application dans /home/fournisseur2/apptata

Les services fournient par ses applis ont besoin d'avoir des chemins cohérents :
http://serveurappli.societe.fr

et les applications joignables par les URL :

http://serveurappli.societe.fr/apptoto
http://serveurappli.societe.fr/apptata

Les fournisseurs utilisent des outils divers et variés tel ruby on rails, php et basic (non j'déconne).

Je touche au but ! un soucis entre passenger ( module rails pour apache ) et un Options -indexes quelque part !

Comme tu me l'avais signalé la solution ce joue entre des alias, des lien logiques et des fichiers virtual hosts

Pour ceux que cela intéresse pour la partie ruby :

http://www.redmine.org/projects/redmine … one_domain

Hors ligne

#6 Le 28/02/2013, à 15:48

Maisondouf

Re : Sous URL et Virtual Host sous apache

Les liens symboliques ne servent à rien, l'alias est suffisant.
Dans le site que tu cites, le gars fait un lien symbolique qui ne sert que dans une seule ligne, celle de l'alias.

Alias /myapp1 "/var/www/app1/public/" 

Autant mettre directement la bonne référence au bon répertoire

Alias /myapp1 "/home/jean/app1/public/" 

Et pas mettre de lien....Apache sait le faire


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

#7 Le 28/02/2013, à 16:29

Wiggum

Re : Sous URL et Virtual Host sous apache

Très bonne remarque ...  Tout fonctionne correctement désormais.

Le pire c'est que sur tout les tutos il est demandé de faire un alias ...

Je ne vois qu'une seule explication mais elle est peut être fausse ?

Voici le fichier aujourd'hui

<VirtualHost *:80>
     ServerName serveurappli.societe.fr
     DocumentRoot "/home/serveurappli/www/"
     RailsEnv development

<Directory /home/serveurappli/www/>
        Allow from all
</Directory>

Alias /app1 "/home/serveurappli/www/ln-app1/public"

RackBaseURI /app1
<Directory /home/serveurappli/www/ln-app1/>
Options FollowSymLinks +ExecCGI +Indexes
AllowOverride all
Order allow,deny
Allow from all
</Directory>

</VirtualHost>

Pourrais je passer les paramètres Directory un répertoire externe au DocumentRoot ?

Alias /app1 "/home/jean/app1/public/" (comme tu le décris dans ton post ci dessus)

RackBaseURI /app1
<Directory /home/jean/app1/public/> (je passe des paramètres à un repertoire externe au DocumentRoot)
Options FollowSymLinks +ExecCGI +Indexes
AllowOverride all
Order allow,deny
Allow from all
</Directory>

On chipote mais je trouve cela intéressant techniquement.

Hors ligne

#8 Le 28/02/2013, à 16:58

Maisondouf

Re : Sous URL et Virtual Host sous apache

RackBaseURI: c'est quoi cette directive ?

Wiggum a écrit :

Pourrais je passer les paramètres Directory un répertoire externe au DocumentRoot ?

C'est même pour ça qu'a été inventé alias....


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

#9 Le 28/02/2013, à 17:10

Wiggum

Re : Sous URL et Virtual Host sous apache

J'ai honte de l'avouer mais apparemment c'est utiliser par passenger pour définir des SUB uri mais j'ai bêtement suivi un tuto sur ce coup ...
Mais du coup je me pose vraiment la question concernant cette cochonnerie de lien logique peut être inutile et donc de faire pointer l'alias directement sur le chemin de l'application ...

RackBaseURI <uri>

Used to specify that the given URI is a Rack application. See Deploying Rack to a sub URI for an example.

It is allowed to specify this option multiple times. Do this to deploy multiple Rack applications in different sub-URIs under the same virtual host.

This option may occur in the following places:

    In the global server configuration.

    In a virtual host configuration block.

    In a <Directory> or <Location> block.

    In .htaccess, if AllowOverride Options is on.


En tout cas merci beaucoup pour ta participation

Hors ligne