Rediriger des urls ... inexistantes :)

WRInaute accro
Bonjour à toutes et tous,

Je vous expose mon petit soucis. Il arrive parfois qu'une page inexistante soit appelée par - un internaute, un bot, un marcassin - (*). Cette page au lieu d'afficher un - joli, horrible, hideux - (*) 404, affiche... une page. En gros y'a un soucis dans les sous répertoires, et autres trucs dans le style. Pour donner un ordre d'idées : machin.php donne une page. C'est logique. Mais machin/ph donne aussi une page. Page au demeurant assez... - surprenante, horrifiante, moche - (*). Problème il y a certes, mais problème je ne sais point régler. Alors si vous aviez - des pistes, un coca frais, le téléphone de Jessica Alba (vu qu'Anggun s'est mariée :-() - (*), ce serait avec grand plaisir.

Marchi d'avance

(*) : au choix
 
WRInaute passionné
Salut,
Moi j'ai besoin d'un traducteur extra terrestre pour comprendre "toi quoi écrire" :mrgreen: ..ok je :arrow: .

Sinon, "machin.php" est une page dynamique permettant l'affichage d'articles ou autres??
 
WRInaute accro
Alala et en + ils veulent des exemples. Bon alors je supprimerais l'exemple après lol

-rienrienrien
-pasgrandchose

C'est plus clair ?

ps : euh y'a pas les * dans les urls :)

Edit : j'ai viré les urls :)
 
WRInaute discret
Je ne comprend pas comment on peut avoir accès à une page inexistante. Est-ce les internautes tapent eux-même l'adresse et, en se trompant, essayent d'afficher une page qui n'existe pas ? Mais comment est-ce possible pour un bot ? Malgré les exemples, je suis un peu perdue.

Pour couronner le tout, je n'ai ni coca frais, ni le téléphone de Jessica Alba. Désolée ! J'ai vraiment tout faux sur ce coup-là ! :lol:
 
WRInaute passionné
En faite il faut couper l'url par un slash juste avant le point.
finstreet, cette page est statique avec en bd ou dynamique ?
 
WRInaute accro
Ca sent la grosse redirection htaccess bien foireuse ça...

Tu peux l'envoyer en MP ?
Du moins la partie des redirection des pages publiques
 
WRInaute passionné
Perso, je comparerais l'url du navigateur avec l'url réelle pour effectuer une redirection 301 vers la bonne url.
Un peut dans ce style dans le cas d'une page dynamique :
Code:
<?php
$id=$_GET["id"];
function url_titre()
{
	return "http://" . $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
}

$query = mysql_query("SELECT * FROM matable WHERE id='".mysql_real_escape_string($id)."'");

while($page = mysql_fetch_array($query))
{
  //on construit l'url de la page réelle en fonction des éléments en bd
  $url_de_la_page = 'http://'.$_SERVER['HTTP_HOST'].'/'.$page['id'].'-'.$page['nom'].'.php';
}
mysql_close();
 //si les 2 url sont différentes, on redirige vers la bonne
 if($url_de_la_page != url_titre()){
 header("HTTP/1.1 301 Moved Permanently");
 header('Location: '.$url_de_la_page.'');
 }
?>
 
WRInaute accro
ben en l'occurence la page actualites.php n'est pas une page de redirection :) certes le contenu est dynamique mais je passe aucun paramètre là dedans.

Par contre je viens de retrouver un rewriting dessus. Un peu biscornu je l'accorde à savoir :

RewriteRule ^actualites/([-0-9a-zA-Z]*)\.php$ /finance/actualites.php?machinchose=$1 [L]

C'est pas un soucis de nom de répertoire ? genre :

RewriteRule ^actus/([-0-9a-zA-Z]*)\.php$ /finance/actualites.php?machinchose=$1 [L]

et le problème sauterait ?
 
WRInaute passionné
Je suis bien trop nul en rewrite pour te répondre ...sorry!
Sinon, sans réponse et au pire, un truc dans ce style en php devrait également faire l'affaire je pense :
Code:
<?php
if($_SERVER["REQUEST_URI"] !="/actualites.php"){
header("HTTP/1.1 301 Moved Permanently");
header('Location: http://www.tonsite.com/ton-repertoire/actualites.php');
}
?>
 
WRInaute accro
bon alors j'ai trouvé. C'est bien cette redirection qui est plus que foireuse. Elle est présente sur un total de 4 fichiers. J'ai testé les 4 fichiers et un seul a bien réagi. Je vais le voir et hop j'avais mis en place un tit truc pour corriger le problème. Vu que je n'ai pas envie de tout bidouiller à quelques heures de partir en vacances, je vais modifier les 3 fichiers en rajoutant le petit script. En fait le petit script compte le nombre de / dans l'url :) Si y'en a trop non justifié, ca rebalance vers la page d'origine :) Ca évitera à Google ou à d'autres de faire joujou :)

Merci encore pour tout

ps : je reviendrais sur le post après les vacances pour tenter les solus qui semblent bien plus fiables que la mienne :)
 
WRInaute accro
Rod la Kox a dit:
Ca sent la grosse redirection htaccess bien foireuse ça...

Tu peux l'envoyer en MP ?
Du moins la partie des redirection des pages publiques

Bien vu :)Je débutais à l'époque... maintenant c'est officiel et je le sais... suis une burne :)
 
WRInaute accro
Rod la Kox a dit:
Alors dans 48h, je veux plus te voir.
Tu fermes ton PC, tu fais tes bagage et tu te casse au soleil.
Nan mais.

c'est pas gagné, me suis acheté un eeePc et ma belle mère a pris Internet depuis peu lol
 
Discussions similaires
Haut