|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
michel1967 Nouveau WRInaute
Inscrit le: 28 Sep 2005 Messages: 7 Localisation: France-Lyon
|
Posté le : Lun Oct 03, 2005 14:40 Sujet du message: modification de $PHP_SELF dans .htaccess |
|
|
Bonjour,
J'utilise les RewriteRules suivants sur un serveur mutualisé :
| Code: |
RewriteRule .*/ezmediacatalogue/catalogue/(.*)$ /home/inovagor/public_html/ezmediacatalogue/catalogue/$1 [T="application/octstream",S=5]
RewriteRule ^/stats/store/(.*).gif$ /home/inovagor/public_html/ezstats/user/storestats.php [S=4]
RewriteRule ^/static/(.*)$ /home/inovagor/public_html/static/$1 [S=3]
RewriteRule ^/filemanager/filedownload/([^/]+)/(.*)$ /home/inovagor/public_html/ezfilemanager/files/$1 [T="application/oct-stream",S=2]
RewriteRule ^/mediacatalogue/catalogue/(.*)$ /home/inovagor/public_html/ezmediacatalogue/catalogue/$1 [T="application/oct-stream",S=1]
RewriteRule !\.(rm|txt|ico|xml|ram|mpe|mpeg|mpg|mov|gif|css|js|swf|jpg|png|jar|php4)$ /home/inovagor/public_html/index.php |
Ca fonctionne bien sauf que la variable $PHP_SELF renvoi systématiquement index.php (idem quelque soit l'url qu'on appelle).
Comment faire pour ne par perdre le contenu de cette variable?
Merci,
Michel |
|
| |
|
 |
shrom WRInaute passionné

Inscrit le: 05 Juil 2004 Messages: 866
|
Posté le : Lun Oct 03, 2005 15:20 Sujet du message: modification de $PHP_SELF dans .htaccess |
|
|
| $PHP_SELF ( ou mieux $_SERVER['PHP_SELF'] ) est le nom du script qui est exécuté, si tu veux récupérer l'URI entrée par l'utilisateur, c'est $_SERVER['REQUEST_URI']; |
|
| |
|
 |
michel1967 Nouveau WRInaute
Inscrit le: 28 Sep 2005 Messages: 7 Localisation: France-Lyon
|
Posté le : Lun Oct 03, 2005 16:14 Sujet du message: modification de $PHP_SELF dans .htaccess |
|
|
Merci Shrom,
Mais peux-tu me dire comment je l'utilise $_SERVER['REQUEST_URI'] dans mon .htaccess pour l'URL soit renvoyée correctement lors de l'appel de la page? |
|
| |
|
 |
shrom WRInaute passionné

Inscrit le: 05 Juil 2004 Messages: 866
|
Posté le : Lun Oct 03, 2005 23:13 Sujet du message: modification de $PHP_SELF dans .htaccess |
|
|
| Il n'y a rien à rajouter dans ton .htaccess, c'est dans ton script PHP que tu lis cette variable. |
|
| |
|
 |
michel1967 Nouveau WRInaute
Inscrit le: 28 Sep 2005 Messages: 7 Localisation: France-Lyon
|
Posté le : Mar Oct 04, 2005 17:52 Sujet du message: modification de $PHP_SELF dans .htaccess |
|
|
Le pb c'est que les deux variables sont utilisées dans le code php (REQUEST_URI et PHP_SELF). Et ce n'est pas moi qui gère le code.
J'essai donc de me débrouiller avec le .htaccess et de comprendre pourquoi mes rewriteRules renvoient toujours /index.php dans $_SERVER['PHP_SELF']. |
|
| |
|
 |
Suede WRInaute accro

Inscrit le: 04 Oct 2002 Messages: 3630 Localisation: Suède
|
Posté le : Mar Oct 04, 2005 18:01 Sujet du message: modification de $PHP_SELF dans .htaccess |
|
|
Parce que PHP_SELF renvoie le script qui est exécuté et c'est index.php dans ton cas
exemple:
ce n'est photo.php le script qui est executé, c'est le script par defaut du repertoire vrai-chemin et en general, c'est index.php .
| Code: |
RewriteRule ^/chemin-virtuel/photo.php$ /home/vrai-chemin/ [L]
|
|
|
| |
|
 |
michel1967 Nouveau WRInaute
Inscrit le: 28 Sep 2005 Messages: 7 Localisation: France-Lyon
|
Posté le : Mer Oct 05, 2005 9:18 Sujet du message: modification de $PHP_SELF dans .htaccess |
|
|
Dans ce cas, comment je peux indiquer dans mon .htaccess que la page par défaut est /home/inovagor/public_html/index.php ?
Si je peux faire ça (et si j'ai compris ce que tu veux dire Suede) je pourrais alors modifer la règle :
RewriteRule !\.(rm|txt|ico|xml|ram|mpe|mpeg|mpg|mov|gif|css|js|swf|jpg|png|jar|php4)$ /home/inovagor/public_html/index.php
Je vois pas encore exactement comment mais c'est l'idée non? |
|
| |
|
 |
Suede WRInaute accro

Inscrit le: 04 Oct 2002 Messages: 3630 Localisation: Suède
|
Posté le : Mer Oct 05, 2005 9:51 Sujet du message: modification de $PHP_SELF dans .htaccess |
|
|
Bah a priori, c'est la page par defaut. J'ai pas tout compris ce que tu veux faire.
Si tu as ca :
| Code: |
RewriteRule !\.(rm|txt|ico|xml|ram|mpe|mpeg|mpg|mov|gif|css|js|swf|jpg|png|jar|php4)$ /home/inovagor/public_html/index.php
|
Tu redirigeras toujours vers cet index.php et ce sera cet index.php qui sera mis dans le php_self.
François |
|
| |
|
 |
michel1967 Nouveau WRInaute
Inscrit le: 28 Sep 2005 Messages: 7 Localisation: France-Lyon
|
Posté le : Mer Oct 05, 2005 10:01 Sujet du message: modification de $PHP_SELF dans .htaccess |
|
|
Merci François pour ton aide car je ne m'en sors pas.
En fait pour résumer la situation. J'ai migré un site d'un serveur dédié vers un mutualisé.
Sur le dédié, les RewiteRules étaient dans le <virtualhost>. Mais sur le mutualisé je n'ai pas accès aux fichiers de configurations d'apache. J'utilise donc un .htaccess poue les ré-écritures.
La règle que tu cite renvoie (comme souhaité) sur la page index.php mais le problème c'est que php_self contient toujours /index.php alors que sur le servuer dédié cette variable contient l'information nécessaire à la page index.php pour afficher l'article souhaité. Par exemple /bienvenue.
Tu vois mon problème?
Michel |
|
| |
|
 |
| |
|
|