Hello
Dans une page php, comment intercepter une variable GET puis provoquer
une erreur 404 basique en fonction de sa valeur ?
En l'occurence, il s'agit pour moi de pouvoir faire un test du type :
if ($_GET['id'] == 999) {
header("HTTP/1.0 404 Not Found");
}
ce simple test affiche la page normalement même si id vaut 999. Si j'y
ajoute exit; le script stoppe (donc le test est bien positif) mais
toujours pas de page 404 !
En d'autre terme, comment simuler ou provoquer une "vraie" erreur 404 ?
Merci
--
VarioFlux @-`-,--
Metteur en scène cherche nain pour rôle dans court métrage.
Donc mon idée est de générer une "vraie" erreur 404 sur ces pages là et uniquement celles-là car le reste est très bien référencé.
Si vous avez d'autres idées ?
Si tu mets une page d'erreur, ils risquent d'attaquer tes autres pages. Pourquoi ne fais-tu pas un vrai faux traitement: tu fais réagir ta page comme normalement en répondant que tout est normal et tu ne fais aucun traitement. Les robots ne vont pas voir si leurs posts ont été bien écrits ;-) Ils s'acharnent alors sur une page qui ne fait rien et sont contents comme ça.
Donc mon idée est de générer une "vraie" erreur 404 sur ces pages là et
uniquement celles-là car le reste est très bien référencé.
Si vous avez d'autres idées ?
Si tu mets une page d'erreur, ils risquent d'attaquer tes autres pages.
Pourquoi ne fais-tu pas un vrai faux traitement: tu fais réagir ta page
comme normalement en répondant que tout est normal et tu ne fais aucun
traitement. Les robots ne vont pas voir si leurs posts ont été bien
écrits ;-)
Ils s'acharnent alors sur une page qui ne fait rien et sont contents
comme ça.
Donc mon idée est de générer une "vraie" erreur 404 sur ces pages là et uniquement celles-là car le reste est très bien référencé.
Si vous avez d'autres idées ?
Si tu mets une page d'erreur, ils risquent d'attaquer tes autres pages. Pourquoi ne fais-tu pas un vrai faux traitement: tu fais réagir ta page comme normalement en répondant que tout est normal et tu ne fais aucun traitement. Les robots ne vont pas voir si leurs posts ont été bien écrits ;-) Ils s'acharnent alors sur une page qui ne fait rien et sont contents comme ça.
VarioFlux
Il se trouve que Antoine Polatouche a formulé :
Donc mon idée est de générer une "vraie" erreur 404 sur ces pages là et uniquement celles-là car le reste est très bien référencé.
Si vous avez d'autres idées ?
Si tu mets une page d'erreur, ils risquent d'attaquer tes autres pages. Pourquoi ne fais-tu pas un vrai faux traitement: tu fais réagir ta page comme normalement en répondant que tout est normal et tu ne fais aucun traitement. Les robots ne vont pas voir si leurs posts ont été bien écrits ;-) Ils s'acharnent alors sur une page qui ne fait rien et sont contents comme ça.
C'est ce qui me fais hésiter, à vrai dire, c'est pour ça que je voulais une "vraie de vraie" page 404 ! Apache doit bien générer ou faire un include de ce texte...
En attendant je fais le gros dos, mais ça dure depuis 3 ou 4 mois et heureusement que j'ai un dédié...
-- VarioFlux @-`-,--
Sourd rencontrerait sourd pour trouver terrain d'entente.
Il se trouve que Antoine Polatouche a formulé :
Donc mon idée est de générer une "vraie" erreur 404 sur ces pages là et
uniquement celles-là car le reste est très bien référencé.
Si vous avez d'autres idées ?
Si tu mets une page d'erreur, ils risquent d'attaquer tes autres pages.
Pourquoi ne fais-tu pas un vrai faux traitement: tu fais réagir ta page
comme normalement en répondant que tout est normal et tu ne fais aucun
traitement. Les robots ne vont pas voir si leurs posts ont été bien
écrits ;-)
Ils s'acharnent alors sur une page qui ne fait rien et sont contents
comme ça.
C'est ce qui me fais hésiter, à vrai dire, c'est pour ça que je voulais
une "vraie de vraie" page 404 ! Apache doit bien générer ou faire un
include de ce texte...
En attendant je fais le gros dos, mais ça dure depuis 3 ou 4 mois et
heureusement que j'ai un dédié...
--
VarioFlux @-`-,--
Sourd rencontrerait sourd pour trouver terrain d'entente.
Donc mon idée est de générer une "vraie" erreur 404 sur ces pages là et uniquement celles-là car le reste est très bien référencé.
Si vous avez d'autres idées ?
Si tu mets une page d'erreur, ils risquent d'attaquer tes autres pages. Pourquoi ne fais-tu pas un vrai faux traitement: tu fais réagir ta page comme normalement en répondant que tout est normal et tu ne fais aucun traitement. Les robots ne vont pas voir si leurs posts ont été bien écrits ;-) Ils s'acharnent alors sur une page qui ne fait rien et sont contents comme ça.
C'est ce qui me fais hésiter, à vrai dire, c'est pour ça que je voulais une "vraie de vraie" page 404 ! Apache doit bien générer ou faire un include de ce texte...
En attendant je fais le gros dos, mais ça dure depuis 3 ou 4 mois et heureusement que j'ai un dédié...
-- VarioFlux @-`-,--
Sourd rencontrerait sourd pour trouver terrain d'entente.
Mickael Wolff
C'est ce qui me fais hésiter, à vrai dire, c'est pour ça que je voulais une "vraie de vraie" page 404 ! Apache doit bien générer ou faire un include de ce texte...
Du tout, c'est en dur dans le code. À la ligne 860, dans la version trouvée via GoogleCodeSearch :
Ce qu'il faut comprendre, c'est que le texte n'est qu'un plus généré pour l'utilisateur. En fait, le navigateur devrait afficher un message à mon avis... mais bon, il a été décidé que la même erreur devait pouvoir être représentée au goût du Webmaster. C'est ce qu'on appelle rendre l'environnement cohérent ;)
Il ne faut pas que tu oublie que PHP est un module de Apache, et que Apache, une fois qu'il a préparé les informations HTTP les mets à disposition des modules et appelle les modules selon la nécessité. Si Apache a trouvé un fichier à traiter, il n'a pas de raison de vérifier que le module a changé l'état HTTP : il envoie ce qui a été modifié par le module, point.
Sinon Apache serait trop intrusif, et les modules perdraient de leur intérêt. -- Mickaël Wolff aka Lupus Michaelis http://lupusmic.org
C'est ce qui me fais hésiter, à vrai dire, c'est pour ça que je voulais
une "vraie de vraie" page 404 ! Apache doit bien générer ou faire un
include de ce texte...
Du tout, c'est en dur dans le code. À la ligne 860, dans la version
trouvée via GoogleCodeSearch :
Ce qu'il faut comprendre, c'est que le texte n'est qu'un plus généré
pour l'utilisateur. En fait, le navigateur devrait afficher un message à
mon avis... mais bon, il a été décidé que la même erreur devait pouvoir
être représentée au goût du Webmaster. C'est ce qu'on appelle rendre
l'environnement cohérent ;)
Il ne faut pas que tu oublie que PHP est un module de Apache, et que
Apache, une fois qu'il a préparé les informations HTTP les mets à
disposition des modules et appelle les modules selon la nécessité. Si
Apache a trouvé un fichier à traiter, il n'a pas de raison de vérifier
que le module a changé l'état HTTP : il envoie ce qui a été modifié par
le module, point.
Sinon Apache serait trop intrusif, et les modules perdraient de leur
intérêt.
--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org
C'est ce qui me fais hésiter, à vrai dire, c'est pour ça que je voulais une "vraie de vraie" page 404 ! Apache doit bien générer ou faire un include de ce texte...
Du tout, c'est en dur dans le code. À la ligne 860, dans la version trouvée via GoogleCodeSearch :
Ce qu'il faut comprendre, c'est que le texte n'est qu'un plus généré pour l'utilisateur. En fait, le navigateur devrait afficher un message à mon avis... mais bon, il a été décidé que la même erreur devait pouvoir être représentée au goût du Webmaster. C'est ce qu'on appelle rendre l'environnement cohérent ;)
Il ne faut pas que tu oublie que PHP est un module de Apache, et que Apache, une fois qu'il a préparé les informations HTTP les mets à disposition des modules et appelle les modules selon la nécessité. Si Apache a trouvé un fichier à traiter, il n'a pas de raison de vérifier que le module a changé l'état HTTP : il envoie ce qui a été modifié par le module, point.
Sinon Apache serait trop intrusif, et les modules perdraient de leur intérêt. -- Mickaël Wolff aka Lupus Michaelis http://lupusmic.org
Patrick 'Zener' Brunet
Bonjour.
"Bob" a écrit dans le message de news:
VarioFlux a exposé le 12/11/2007 :
En d'autre terme, comment simuler ou provoquer une "vraie" erreur 404 ?
Après avoir envoyé la bonne entête HTTP kivabien, il ne faut pas oublier d'envoyer la page HTML.
Une page 404 standard d'apache peut se réprésenter par le code PHP suivant :
<?php header("HTTP/1.0 404 Not Found");
echo '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>404 Not Found</title> </head><body> <h1>Not Found</h1> <p>The requested URL '.$_SERVER['REQUEST_URI'].' was not found on this server.</p> <hr> <address>'.$_SERVER['SERVER_SIGNATURE'].'</address> </body></html>'; ?>
A adapter selon vos besoins.
Je me suis posé le problème aussi...
Je crois qu'on peut reformuler en: comment renvoyer à la page 404 standard de son hébergeur (avec un status 404 bien sûr).
Donc comment rendre la main au serveur pour qu'il fasse le traitement 404 par défaut, après qu'il ait trouvé un script à servir ?
Pas sûr que ce soit possible...
Merci.
-- Cordialement. -- /************************************************** * Patrick BRUNET * E-mail: lien sur http://zener131.free.fr/ContactMe **************************************************/
Bonjour.
"Bob" <bob@leponge.fr.invalid> a écrit dans le message de news:
mn.6bf57d7b75c84f82.82259@leponge.fr.invalid...
VarioFlux a exposé le 12/11/2007 :
En d'autre terme, comment simuler ou provoquer une "vraie" erreur 404 ?
Après avoir envoyé la bonne entête HTTP kivabien, il ne faut pas
oublier d'envoyer la page HTML.
Une page 404 standard d'apache peut se réprésenter par le code PHP
suivant :
<?php
header("HTTP/1.0 404 Not Found");
echo '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>404 Not Found</title>
</head><body>
<h1>Not Found</h1>
<p>The requested URL '.$_SERVER['REQUEST_URI'].' was not
found on this server.</p>
<hr>
<address>'.$_SERVER['SERVER_SIGNATURE'].'</address>
</body></html>';
?>
A adapter selon vos besoins.
Je me suis posé le problème aussi...
Je crois qu'on peut reformuler en:
comment renvoyer à la page 404 standard de son hébergeur (avec un status 404
bien sûr).
Donc comment rendre la main au serveur pour qu'il fasse le traitement 404
par défaut, après qu'il ait trouvé un script à servir ?
Pas sûr que ce soit possible...
Merci.
--
Cordialement.
--
/**************************************************
* Patrick BRUNET
* E-mail: lien sur http://zener131.free.fr/ContactMe
**************************************************/
En d'autre terme, comment simuler ou provoquer une "vraie" erreur 404 ?
Après avoir envoyé la bonne entête HTTP kivabien, il ne faut pas oublier d'envoyer la page HTML.
Une page 404 standard d'apache peut se réprésenter par le code PHP suivant :
<?php header("HTTP/1.0 404 Not Found");
echo '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>404 Not Found</title> </head><body> <h1>Not Found</h1> <p>The requested URL '.$_SERVER['REQUEST_URI'].' was not found on this server.</p> <hr> <address>'.$_SERVER['SERVER_SIGNATURE'].'</address> </body></html>'; ?>
A adapter selon vos besoins.
Je me suis posé le problème aussi...
Je crois qu'on peut reformuler en: comment renvoyer à la page 404 standard de son hébergeur (avec un status 404 bien sûr).
Donc comment rendre la main au serveur pour qu'il fasse le traitement 404 par défaut, après qu'il ait trouvé un script à servir ?
Pas sûr que ce soit possible...
Merci.
-- Cordialement. -- /************************************************** * Patrick BRUNET * E-mail: lien sur http://zener131.free.fr/ContactMe **************************************************/
Patrick 'Zener' Brunet
Bonjour.
"VarioFlux" a écrit dans le message de news:
Mickael Wolff avait prétendu :
La question existentielle du jour : ça sert à quoi ? [...]
Ben je suis plus prosaïque que ça :
Depuis plusieurs semaines des bots attaquent ma galerie photo dans le but d'y déposer des commentaires "exotiques" :o) [...]
If you want do delete your site from our spam bases - just email us
with domain of your site:
thank you! <<
Donc mon idée est de générer une "vraie" erreur 404 sur ces pages là et uniquement celles-là car le reste est très bien référencé.
Si vous avez d'autres idées ?
Donnez-leur ce qu'ils veulent, en renommant les URL: http://www.monkeys.com/cgi-bin/wpoison/wpoison.cgi/tetaclac
http://www.monkeys.com/wpoison/ pour description.
-- Cordialement. -- /************************************************** * Patrick BRUNET * E-mail: lien sur http://zener131.free.fr/ContactMe **************************************************/
Bonjour.
"VarioFlux" <varioflux@free.fr> a écrit dans le message de news:
mn.723d7d7bb3cd55b5.15071@free.fr...
Mickael Wolff avait prétendu :
La question existentielle du jour : ça sert à quoi ?
[...]
Ben je suis plus prosaïque que ça :
Depuis plusieurs semaines des bots attaquent ma galerie photo dans le
but d'y déposer des commentaires "exotiques" :o)
[...]
If you want do delete your site from our spam bases - just email us
with domain of your site:
abuse-here@inbox.ru
thank you!
<<
Donc mon idée est de générer une "vraie" erreur 404 sur ces pages là et
uniquement celles-là car le reste est très bien référencé.
Si vous avez d'autres idées ?
Donnez-leur ce qu'ils veulent, en renommant les URL:
http://www.monkeys.com/cgi-bin/wpoison/wpoison.cgi/tetaclac
http://www.monkeys.com/wpoison/ pour description.
--
Cordialement.
--
/**************************************************
* Patrick BRUNET
* E-mail: lien sur http://zener131.free.fr/ContactMe
**************************************************/
Donc comment rendre la main au serveur pour qu'il fasse le traitement 404 par défaut, après qu'il ait trouvé un script à servir ?
Pas sûr que ce soit possible...
Si avant de répondre tu lisait l'intégralité de la discussion, tu constaterais qu'on était déjà arrivé à cette conclusion.
Bon, je suis heureux de vous proposer la solution que j'ai trouvé :
*-- if ($_GET['image_id'] == 205) { if ($_SERVER['HTTP_REFERER'] == '') { header("HTTP/1.1 404 Not Found"); header("Content-Type:text/html"); header("Connection: close"); exit(); } } *--
ces quelques lignes répondent à ma problématique de départ.
C'est à dire renvoyer "une vraie erreur 404 apache pur jus" selon un paramètre, j'y ai ajouté deplus un test sur le referer car les robots qui tentent de spammer ma galerie n'en envoient pas et tapent directement la page, alors que les 9/10ème des visiteurs normaux arrivent sur cette page en suivant des liens.
Je vais bien voir si ça va exciter les spammeurs ou les calmer... :o)
-- VarioFlux @-`-,--
Metteur en scène cherche nain pour rôle dans court métrage.
Mickael Wolff a pensé très fort :
Donc comment rendre la main au serveur pour qu'il fasse le traitement 404
par défaut, après qu'il ait trouvé un script à servir ?
Pas sûr que ce soit possible...
Si avant de répondre tu lisait l'intégralité de la discussion, tu
constaterais qu'on était déjà arrivé à cette conclusion.
Bon, je suis heureux de vous proposer la solution que j'ai trouvé :
*--
if ($_GET['image_id'] == 205) {
if ($_SERVER['HTTP_REFERER'] == '') {
header("HTTP/1.1 404 Not Found");
header("Content-Type:text/html");
header("Connection: close");
exit();
}
}
*--
ces quelques lignes répondent à ma problématique de départ.
C'est à dire renvoyer "une vraie erreur 404 apache pur jus" selon un
paramètre, j'y ai ajouté deplus un test sur le referer car les robots
qui tentent de spammer ma galerie n'en envoient pas et tapent
directement la page, alors que les 9/10ème des visiteurs normaux
arrivent sur cette page en suivant des liens.
Je vais bien voir si ça va exciter les spammeurs ou les calmer...
:o)
--
VarioFlux @-`-,--
Metteur en scène cherche nain pour rôle dans court métrage.
Donc comment rendre la main au serveur pour qu'il fasse le traitement 404 par défaut, après qu'il ait trouvé un script à servir ?
Pas sûr que ce soit possible...
Si avant de répondre tu lisait l'intégralité de la discussion, tu constaterais qu'on était déjà arrivé à cette conclusion.
Bon, je suis heureux de vous proposer la solution que j'ai trouvé :
*-- if ($_GET['image_id'] == 205) { if ($_SERVER['HTTP_REFERER'] == '') { header("HTTP/1.1 404 Not Found"); header("Content-Type:text/html"); header("Connection: close"); exit(); } } *--
ces quelques lignes répondent à ma problématique de départ.
C'est à dire renvoyer "une vraie erreur 404 apache pur jus" selon un paramètre, j'y ai ajouté deplus un test sur le referer car les robots qui tentent de spammer ma galerie n'en envoient pas et tapent directement la page, alors que les 9/10ème des visiteurs normaux arrivent sur cette page en suivant des liens.
Je vais bien voir si ça va exciter les spammeurs ou les calmer... :o)
-- VarioFlux @-`-,--
Metteur en scène cherche nain pour rôle dans court métrage.