Bonsoir bonsoir,
Je n’y connais rien en PHP mais j’avais réussit à sécuriser, via htaccess, un dossier de mon site. Depuis que mon hébergeur, Online, à changé de plateforme "PHP est désormais chrooté dans le virtualhost de mon sous domaine ". Je ne sais pas ce que ça signifie mais le chemin absolu de mon site a changé.
Voici les explications qu’ils me donnent :
Exemple d’ancien répertoire racine :
# $mosConfig_absolute_path = '/var/www/25/f/r/e/fredj.org/www';
# $mosConfig_cachepath = '/var/www/25/f/r/e/fredj.org/www/cache';
Le nouveau répertoire racine compatible avec toutes les plateformes (chez vous, sur la plateforme historique et sur la nouvelle plateforme) :
$mosConfig_absolute_path = $_SERVER['DOCUMENT_ROOT'];
$mosConfig_cachepath = $_SERVER['DOCUMENT_ROOT'] . "cache";
Ailleurs, dans leur doc, je trouve aussi ça :
Vous devez utiliser la variable $DOCUMENT_ROOT qui pointe a la racine du site Web (ou du site secondaire) dans lequel se trouve votre script, vous serez donc sur de ne jamais avoir de déconvenues : Exemple : Vous voulez savoir quel est le chemin correspondant a http://www.monsite.ext/unrepertoire/unautrerepertoire/
Il s’agit de $chemin = “$DOCUMENT_ROOT/unrepertoire/unautrerepertoire/”;
Mon dossier sécurisé contenant le .htaccess se trouve dans le dossier WWW/securise et le .passwd se trouve dans WWW. D’ailleurs on me dit que le mieux serait qu’il soit sur un autre site. Je voudrais bien le mettre sur un autre site mais avec SERVER['DOCUMENT_ROOT'] pour toute description de la racine je ne vois pas comment lui donner l’adresse absolue sur un autre site (chez le même hébergeur).
Déjà que je n’y arrive pas sur celui-ci.
Voici le contenu de mon .htaccess :
SetEnvIfNoCase Request_URI \.ht(access|passwd)$ ban
<Files ~ "^.*$">
order allow,deny
allow from all
deny from env=ban
</Files>
Authname " Page protégée"
AuthUserFile « ici j’ai tout essayé »
AuthGroupFile /dev/null
AuthType Basic
<limit GET POST>
require valid-user
</limit>
J’ai fait sauter le premier bloque, ca ne change rien, d’ailleurs ca marchait comme ça avant le changement de plateforme…
Merci beaucoup de votre aide,
Emmanuel
pb d'adresse absolue dans un .htaccess
Modérateur : Modérateurs
- Laude Emmanuel
- Nouveau membre
- Messages : 3
- Inscription : lun. 15 déc. 2008, 17:49
- Localisation : Essone 91
- Contact :
- dexmon
- Gourou
- Messages : 793
- Inscription : sam. 18 juin 2005, 9:55
- Localisation : /usr/local/apache
- Contact :
Re: pb d'adresse absolue dans un .htaccess
POur ton problème de chemin absolu utilise la fonction realpath() de php pour trouver le chemin absolu vers la racine de ton hébergement
Sinon fait un
il va t'afficher le chemin abolu du genre:
Dans l'exemple htdocs est la racine de ton site web
Il te rester plus qu'a placer le .htpasswd où il faut:
Note: Ne pas placer de <Limit> c'est une faille.
Sinon fait un
Code : Tout sélectionner
echo $_SERVER['DOCUMENT_ROOT'];
il va t'afficher le chemin abolu du genre:
Code : Tout sélectionner
/var/www/t/u/s/w/toto/htdocs/
Dans l'exemple htdocs est la racine de ton site web
Il te rester plus qu'a placer le .htpasswd où il faut:
Code : Tout sélectionner
AuthUserFile /var/www/t/u/s/w/toto/htdocs/.htpasswd
AuthGroupFile /dev/null
Authname " Page protégée"
AuthType Basic
require valid-user
Note: Ne pas placer de <Limit> c'est une faille.


Avant toute demande de support, vérifiez votre fichier error.log Apache.
----------------------------------------
- Laude Emmanuel
- Nouveau membre
- Messages : 3
- Inscription : lun. 15 déc. 2008, 17:49
- Localisation : Essone 91
- Contact :
Re: pb d'adresse absolue dans un .htaccess
Tout d'abord merci de m'avoir répondu,
La démarche que tu m'indique est la première chose que j'ai faite. Avant le changement de plateforme, ça me donnait en effet une adresse comme celle que tu cite en exemple et tout fonctionnais. Mais maintenant, quand j'utilise cette commande ou toutes celles que j'ai pu trouver, j'obtiens pour toute réponse: /
De même, quand j'accède à un fichier Path.php contenant ceci :
<?php
phpinfo();
echo realpath("path.php");
?>
A la ligne
_SERVER["DOCUMENT_ROOT"]
Je trouve la même réponse : /
Et il n’y a pas de ligne _SERVER["PATH_TRANSLATED"] (Selon un tutoriel, cette ligne est censée donnée la racine absolue)

La démarche que tu m'indique est la première chose que j'ai faite. Avant le changement de plateforme, ça me donnait en effet une adresse comme celle que tu cite en exemple et tout fonctionnais. Mais maintenant, quand j'utilise cette commande ou toutes celles que j'ai pu trouver, j'obtiens pour toute réponse: /
De même, quand j'accède à un fichier Path.php contenant ceci :
<?php
phpinfo();
echo realpath("path.php");
?>
A la ligne
_SERVER["DOCUMENT_ROOT"]
Je trouve la même réponse : /
Et il n’y a pas de ligne _SERVER["PATH_TRANSLATED"] (Selon un tutoriel, cette ligne est censée donnée la racine absolue)

- dexmon
- Gourou
- Messages : 793
- Inscription : sam. 18 juin 2005, 9:55
- Localisation : /usr/local/apache
- Contact :
Re: pb d'adresse absolue dans un .htaccess
Je serais toi je contacterais l'hébergeur car il y a un problème grave, ou change d'hébergeur car si tu ne sais même plus afficher la valeur de tes variables prédéfinies principales, je vois pas comment tu pourrais utiliser php.
J'ajouterais même que des prises de tête pour un truc aussi simple n'arriverais jamais chez un hébergeur sérieux.
Bye
J'ajouterais même que des prises de tête pour un truc aussi simple n'arriverais jamais chez un hébergeur sérieux.
Bye


Avant toute demande de support, vérifiez votre fichier error.log Apache.
----------------------------------------
- Laude Emmanuel
- Nouveau membre
- Messages : 3
- Inscription : lun. 15 déc. 2008, 17:49
- Localisation : Essone 91
- Contact :
Re: pb d'adresse absolue dans un .htaccess
Ah bon?! Pourtant Online.net c'est sérieux je pensais...
Merci en tout cas.
Merci en tout cas.
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité