Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/05/2011, 21h09   #1
Invité de passage
 
Inscription : juin 2009
Messages : 15
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 15
Points : 3
Points : 3
Par défaut Incompréhension lien vers CFM puis PHP

Bonjour à tous,

je suis actuellement en cours de développement web et j'ai pu remarquer dans le site actuel que je dois remplacer, une drôle de bizarrie.

Je m'explique,
je suis à la racine de mon serveur www et j'aimerai déplacer le site dans un autre dossier (le temps que je développe le nouveau site...). Je déplace le tout dans le dossier www/ancien.

Quand tout fonctionne je peux voir un petit module avec des photos qui défile mais lorsque je déplace le site vers le dossier ancien, une erreur apparaît comme quoi la page est inexistante. Et je ne peux plus voir les jolies photos défilés... Tout le reste fonctionne...

Je fouille donc dans le code et la surprise :
le lien qui mène à la page pour visionner les photos donne ceci :
http://www.monsite.com/galeries/composant/composant.cfm

Et lorsque tout fonctionne, c'est http://www.monsite.com/galeries/composant/composant.php qui apparaît dans la barre d'adresse. J'ai chercher dans tous les dossiers et je n'ai trouvé aucun fichier avec cette extension.

Après quelques heures de recherches et de tests divers je ne trouve pas plus d'informations et je bloque, ce qui est génant car j'aimerais vraiment déplacer mon site dans un autre dossier, pour laisser place au nouveau en cours de développement. Mais en attendant je veux laisser l'autre accessible.

En espérant que vous me comprendrez, je vous remercie.
Cryvar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/05/2011, 21h26   #2
Membre du Club
 
Inscription : mai 2010
Messages : 45
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 45
Points : 67
Points : 67
Bonsoir,

Le lien qui mene normalement vers http://www.monsite.com/galeries/composant/composant.php est il généré par du code php ?

Sinon peut être une règle de réecriture qui n'est plus valable une fois dans le sous dossier.
nonolagalinette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/05/2011, 21h43   #3
Invité de passage
 
Inscription : juin 2009
Messages : 15
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 15
Points : 3
Points : 3
Bonsoir et merci,

Il s'agit d'un simple lien html :

Code :
<a href="../galeries/composant/composant.cfm" target="_top" onClick=...... >
Il pourrait s'agir d'une règle de réécriture ?
C'est à dire ?
J'ai vraiment du mal à comprendre comment le lien sur lequel je clique qui est en format .cfm me redirige automatiquement vers du .php


J'ai voulu faire des tests sur mon pc en local mais dans ce cas la gallerie photo ne fonctionne même pas, je pense que c'est à cause du .cfm que mon serveur ne supporte pas...
Cryvar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/05/2011, 21h56   #4
Membre du Club
 
Inscription : mai 2010
Messages : 45
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 45
Points : 67
Points : 67
Sur un serveur apache ( si c'est le cas pour vous ) les règles de réecriture sont des directives qui transforment les liens tapés dans la barre d'adresse en un autre lien, un cas typique est celui qui transformera le lien 'article-133.hml' en 'articles.php?id=133', mais il est vrai que dans ce cas la page affichée dans le navigateur sera toujours article-133.html.

Quoi qu'il en soit ( désolé si c'est pas trop clair ), si vous n'avez pas de fichier nommé .htaccess dans votre site, il ne doit pas y avoir de réecriture.

Il y a t il quelque chose qui apparait si vous tapez http://www.monsite.com/ancien/galeri.../composant.cfm dans votre navigateur ?
nonolagalinette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/05/2011, 22h01   #5
Invité de passage
 
Inscription : juin 2009
Messages : 15
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 15
Points : 3
Points : 3
http://www.monsite.com/ancien/galeri.../composant.cfm
me redirige automatiquement vers http://www.monsite.com/ancien/galeri.../composant.php

J'ai un fichier redirect.txt dans lequel se trouve plein de :
/galeries/composant/composant.cfm -> /galeries/composant/composant.php

J'ai également un fichier .htaccess dans lequel se trouve :
ErrorDocument 404 /404.php
Cryvar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/05/2011, 22h10   #6
Membre du Club
 
Inscription : mai 2010
Messages : 45
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 45
Points : 67
Points : 67
Pour le fichier .htaccess, il y a simplement une règle qui redirige vers une page précise en cas d'erreur 404.

Par contre l'autre fichier c'est sûrement lui le coupable. En le renommant en redirect.txt.bk par exemple et en mettant à la place un fichier redirect.txt vide, peut être qu'il ne ferra pas la redirection.

Par contre il faudra peut être trouver d'où vient ce fichier et pourquoi il fait toutes ces redirections pour ne pas voir l'erreur revenir.
nonolagalinette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 03h09   #7
Invité de passage
 
Inscription : juin 2009
Messages : 15
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 15
Points : 3
Points : 3
En renommant le fichier et en créant un fichier vide, effectivement je n'ai plus accès à la galerie...

Aurais-tu une idée, d'ou peut venir ce fichier et comment je peux résoudre mon problème ?

Merci encore.
Cryvar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 04h02   #8
Membre du Club
 
Inscription : mai 2010
Messages : 45
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 45
Points : 67
Points : 67
Apparemment le fichier redirect.txt spécifie les redirections à faire pour ton site.

Si le fichier /galeries/composant/composant.cfm doit rediriger vers le fichier /galeries/composant/composant.php pour le site à la base, essaye de mettre une redirection pour l'ancien site dans le fichier redirect.txt :


Code :
1
2
 
/ancien/galeries/composant/composant.cfm -> /ancien/galeries/composant/composant.php
Ceci aura pour effet de rediriger "/ancien/galeries/composant/composant.cfm" vers "/ancien/galeries/composant/composant.php". En effet, il n'y a rien pour dire ou rediriger le fichier cfm devenu "/ancien/galeries/composant/composant.php"
Car l'ancienne redirection ne doit plus fonctionner une fois le site déplacé dans le dossier "ancien".
nonolagalinette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 16h43   #9
Invité de passage
 
Inscription : juin 2009
Messages : 15
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 15
Points : 3
Points : 3
Bonjour,

merci pour l'aide,

ça fonctionne mais le fichier doit resté à la racine www.

De plus, il y a un fichier 404.php dans lequel on trouve beaucoup d'informations comme :
Citation:
// Load information from definition text file
$filehandler = fopen('redirect.txt','r');
Il faut également que je laisse ce fichier à la racine du dossier www à moins que tu es une idée de comment je pourrais le déplacer ?

J'ai essayé en déplacant redirect.txt dans le dossier ancien en modifiant 404.php par

Citation:
// Load information from definition text file
$filehandler = fopen('./ancien/redirect.txt','r');
Mais ca n'a pas fonctionné.

Donc pour recap, tous mes fichiers sont dans www/ancien
sauf 404.php et redirect.txt que je dois laisser dans www

On y est presque ^^
Cryvar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 16h49   #10
Invité de passage
 
Inscription : juin 2009
Messages : 15
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 15
Points : 3
Points : 3
Mince je viens de penser, je vais surement avoir des problèmes d'incompatibilité si je garde mon 404.php à la racine puisque forcement mon nouveau site web aura le sien...
Cryvar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 16h53   #11
Membre du Club
 
Inscription : mai 2010
Messages : 45
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 45
Points : 67
Points : 67
Apparemment, quand une page n'est pas trouvée, .htaccess redirige vers 404.php.
A ce stade, il ouvre le fichier redirect.txt et cherche si une redirection doit être faite.

Donc :
- Il faut dire au serveur que la page 404 est maintenant dans /ancien
- Lui dire que la redirection se fait depuis /ancien/... vers /ancien/...

Dans redirect.txt, essaye sans le point :

Code :
1
2
 
$filehandler = fopen('/ancien/redirect.txt','r');
Il faut aussi que tu modifie le .htaccess :

Code :
1
2
 
ErrorDocument 404 /ancien/404.php
Pour lui dire que a page 404 qui fait les redirections a été déplacée aussi.

Sinon tu dois pouvoir mettre un .htaccess à la racine de ton ancien site avec les mêmes informations pour en mettre un autre dans le nouveau site, apache regardera en priorité dasn le dossier courant si je ne dis pas de bêtises.
nonolagalinette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 17h22   #12
Invité de passage
 
Inscription : juin 2009
Messages : 15
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 15
Points : 3
Points : 3
J'ai modifié le 404.php :

Code :
1
2
// Load information from definition text file
$filehandler = fopen('/ancien/redirect.txt','r');
puis le .htacccess :
Code :
ErrorDocument 404 /ancien/404.php
Et j'ai laissé le redirect.txt :
Code :
/ancien/galeries/composant/composant.cfm -> /ancien/galeries/composant/composant.php
J'ai enlevé tous les fichiers dans www et tout mis dans www/ancien mais ca ne fonctionne pas

Du coup je regarde dans le 404.php et je me dis que finalement comme on a redirigé l'erreur 404 dans ancien, forcement il doit regarder dans le fichier courant, je modifie donc :
Code :
1
2
// Load information from definition text file
$filehandler = fopen('redirect.txt','r');
Et ca fonctionne

Merci beaucoup pour ton aide.

Par contre je comprends pas vraiment l'intérêt des .cfm... Dur de reprendre le travail d'autres ^^

Merci encore
Cryvar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 20h25   #13
Membre du Club
 
Inscription : mai 2010
Messages : 45
Détails du profil
Informations forums :
Inscription : mai 2010
Messages : 45
Points : 67
Points : 67
De rien ça fait toujours plaisir d'aider.

D'ailleurs je compatis, arriver sur le travail d'un autre surtout quand c'est peu ou mal documenté, c'est spécial parfois ...
nonolagalinette est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h52.


 
 
 
 
Partenaires

Hébergement Web