Rediriger vers la racine des répertoires...

Informations et questions sur Apache en général.

Modérateur : Modérateurs

Avatar de l’utilisateur
chrislabricole
Membre
Membre
Messages : 12
Inscription : mer. 16 mai 2007, 11:11

Rediriger vers la racine des répertoires...

Messagepar chrislabricole » ven. 21 nov. 2008, 20:57

Bonsoir tout le monde :)

Je voudrai redirigé tous les répertoires /users/*/ vers /*/ (la racine)

Donc si http://site.com/users/utilisateur1/ est accessible, je voudrai le rendre accessible à http://site.com/utilisateur1/

Actuellement, je fonctionne comme cela (pas très propre et surtout, pas très pratique...), dans mon fichier httpd.conf :

Code : Tout sélectionner

Alias "/utilisateur1" "D:/www/users/utilisateur1/"
<Directory "D:/www/users/utilisateur1">
    php_admin_value open_basedir D:/www/users/utilisateur1/
</Directory>

Alias "/utilisateur2" "D:/www/users/utilisateur2/"
<Directory "D:/www/users/utilisateur2">
    php_admin_value open_basedir D:/www/users/utilisateur2/
</Directory>

Etc.....


J'ai essayé l'URL Rewriting, mais bon, avec ça, les images et les autres liens (comme les CSS par exemple) ne s'y retrouvent plus, je ne veux pas utiliser <base> de HTML, ni mettre un lien absolu...

Donc voilà, j'espère que vous pourriez m'aider :)
Merci d'avance :)

Avatar de l’utilisateur
chrislabricole
Membre
Membre
Messages : 12
Inscription : mer. 16 mai 2007, 11:11

Re: Rediriger vers la racine des répertoires...

Messagepar chrislabricole » sam. 22 nov. 2008, 12:01

J'ai à moitier trouvé !

Pour les Alias, il suffit de faire cela :

Code : Tout sélectionner

AliasMatch ^/(.*)/?$ "D:/www/users/$1"

Ça, ça marche super bien :)

L'autre problème, c'est que je ne sais pas comment faire pour configurer open_basedir...

Code : Tout sélectionner

php_admin_value open_basedir D:/www/users/*/

Si je fais cela, ça ne marche pas, PHP considère l'étoile * comme une simple étoile...

J'ai également essayé cela :

Code : Tout sélectionner

<Directory "D:/www/users/*/">
   php_admin_value open_basedir ./
</Directory>

Ça marche, le open_basedir est configuré, mais les sous-répertoires des utilisateurs son aussi restreins !
C'est pas le but, il faut que ça soit seulement le répertoire de l'utilisateur qui soit restreins, pas les sous-répertoires, sinon on ne peut plus rien faire avec PHP :P

Merci de votre aide :)

Avatar de l’utilisateur
dexmon
Gourou
Gourou
Messages : 793
Inscription : sam. 18 juin 2005, 9:55
Localisation : /usr/local/apache
Contact :

Re: Rediriger vers la racine des répertoires...

Messagepar dexmon » sam. 22 nov. 2008, 15:51

Bonjour,
tout cela est pour quel but ?
Un système d'hébergement pour les développeurs ? un emplacement de stockage ?
ImageUNIX foreverImage
Avant toute demande de support, vérifiez votre fichier error.log Apache.
----------------------------------------

Avatar de l’utilisateur
chrislabricole
Membre
Membre
Messages : 12
Inscription : mer. 16 mai 2007, 11:11

Re: Rediriger vers la racine des répertoires...

Messagepar chrislabricole » sam. 22 nov. 2008, 16:00

Merci de ta réponse :)

C'est pour un simple petit hébergement :)

Pour le AliasMatch, je viens de me rendre compte que j'ai parlé trop vite :(
J'obtiens un 403 Forbidden avec ce AliasMatch :/
Cette erreur s'affiche quand je vais sur : http://monsite.com/, en revanche, l'Alias marche bien, parce-que quand je fais : http://monsite.com/utilisateur1/, il correspond bien à http://monsite.com/users/utilisateur1/ ...

Je ne comprends pas cette erreur :/
Voici la ligne de mon error Log
[Sat Nov 22 15:59:46 2008] [error] [client 192.168.0.254] client denied by server configuration: D:/www/users/error

Bizarre :/

Merci ! :)

Avatar de l’utilisateur
dexmon
Gourou
Gourou
Messages : 793
Inscription : sam. 18 juin 2005, 9:55
Localisation : /usr/local/apache
Contact :

Re: Rediriger vers la racine des répertoires...

Messagepar dexmon » sam. 22 nov. 2008, 16:58

DOnnez plutôt un DocumentRoot à chaque utilisateur au lieu d'un alias, il vous sera plus facile par la suite de configurer l'open_basedir pour chaque utilisateur dans son propre fichier de configuration de vhost avec les php_value et php_admin_value
ImageUNIX foreverImage
Avant toute demande de support, vérifiez votre fichier error.log Apache.
----------------------------------------

Avatar de l’utilisateur
chrislabricole
Membre
Membre
Messages : 12
Inscription : mer. 16 mai 2007, 11:11

Re: Rediriger vers la racine des répertoires...

Messagepar chrislabricole » sam. 22 nov. 2008, 17:37

Je ne comprends pas trop pourquoi un DocumentRoot...
Chaque utilisateur ne possède pas un domaine, donc pas de VirtualHost.

Je veux seulement transformer les URLs
http://monsite.com/users/utilisateur1/
en
http://monsite.com/utilisateur1/

Tout simplement; sans qu'il y ai des problèmes avec les liens, problème qui se pose avec l'URL Rewriting.

La solution la plus simple serait de ne pas mettre un répertoire "users", mais c'est extrêmement sale et pas pratique...

En fait, la chose qui m'avantagerais le plus serait que quand je crée un répertoire (par exemple) "utilisateur50" dans le répertoire "users", que l'Alias se fasse automatiquement en http://monsite.com/utilisateur50/ ...
Et que je n'ai pas besoin de rajouter les 4 lignes (voir code de mon 1er message) dans mon fichier httpd.conf et de redémarrer le serveur...

Voilà, merci beaucoup de votre aide :)


Revenir vers « Général »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités