Rediriger une page qui n'existe pas par htaccess

WRInaute occasionnel
Bonjour, bonsoir à vous tous.

J'ai essayé de trouver la solution, mais je n'y arrive pas.

Comment rediriger par fichier htaccess une page qui n'existe pas.

Par exemple nomdusite.com/?from=http://share-buttons.xyz/

qui n'existe pas ! mais tout de même accessible (ça donne en fait la page réelle de l'index)

J'aimerai que cette URL qui n'existe pas, redirige vers l'index du site

Share-buttons (Du spam) n'arrête pas de me visiter sous cette forme.

Merci de vos réponses, seb.
 
Nouveau WRInaute
Hello

Code:
RewriteCond %{QUERY_STRING} ^(.*)(%3D|=)http(%3A|:)(/|%2F){2}(.*)$ [NC]
RewriteRule (.*) - [F]
 
WRInaute occasionnel
-Tony- a dit:
Hello

Code:
RewriteCond %{QUERY_STRING} ^(.*)(%3D|=)http(%3A|:)(/|%2F){2}(.*)$ [NC]
RewriteRule (.*) - [F]

Bonjour,

ça cause une erreur 403 (qui semble être un accès refusé) c'est déjà ça, par contre ça ne redirige pas vers l'index ou vers Google lol. :D

Mais si un malin s'amuse a mettre par exemple blabladomaine.com/?bonjour nous voyons toujours l'index.

Pourtant si je tape blabladomaine.com/bonjour.php qui n'existe pas, ça redirige bien automatiquement sur l'index.

8)
 
WRInaute accro
pour le serveur .com/?blabla existe alors que non. Donc comme c'est accessible, il n'y a pas l'erreur 404.

Je suis un garcon assez cartesien...

Sois elle existe...soit elle existe pas...

Mais dire elle existe pas , mais elle existe.... ou elle existe, mais elle existe pas... franchement....

Donc une url, un exemple, ca aiderait a comprendre ton probleme...

Car comme ca on va pedaler dans la semoule un bon moment
 
WRInaute occasionnel
Furtif a dit:
pour le serveur .com/?blabla existe alors que non. Donc comme c'est accessible, il n'y a pas l'erreur 404.

Je suis un garcon assez cartesien...

Sois elle existe...soit elle existe pas...

Mais dire elle existe pas , mais elle existe.... ou elle existe, mais elle existe pas... franchement....

Donc une url, un exemple, ca aiderait a comprendre ton probleme...

Car comme ca on va pedaler dans la semoule un bon moment

:D

:arrow: lenomdedomaine.com/?lemotcle n'existe pas réellement mais tout de même accessible en copiant tout ce qui est sur l'index. Je vais te donner un exemple avec un vieux site 0gifs0.free.fr/?bonjour ça donne en réalité ce qui est présent sur le page index. Donc lorsqu'un spammeur fait lenomdedomaine.com/?from=http://share-buttons.xyz/ ça donne bien ce qui est présent sur l'index. Pour lenomdedomaine.com/bonjour.php qui n'existe pas j'ai ajouté un ErrorDocument 404 ça fonctionne puisque ça redirige bien. Pour le serveur lenomdedomaine.com/?lemotcle ça existe. :D J'ai essayé sur ton propre site, ça fait la même chose (Je vois l'index sous .com/?lemotcle) J'ai essayé avec webrankinfo.com/?blabla ça fait bien la redirection vers l'index (Sans l'afficher sous com/?blabla ) Il existe donc bien un code qui permet de bloquer :D
 
WRInaute accro
Si t'as aucune page avec QUERY_STRING:
PHP:
<span class="syntaxdefault"><br /></span><span class="syntaxkeyword"><?</span><span class="syntaxdefault">php<br /></span><span class="syntaxkeyword">if&nbsp;(!empty(</span><span class="syntaxdefault">$_SERVER</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'QUERY_STRING'</span><span class="syntaxkeyword">]))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">$url&nbsp;</span><span class="syntaxkeyword">=&nbsp;</span><span class="syntaxstring">'...'</span><span class="syntaxkeyword">;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'Status:&nbsp;301&nbsp;Moved&nbsp;Permanently'</span><span class="syntaxkeyword">);<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="syntaxdefault">header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'Location:&nbsp;'&nbsp;</span><span class="syntaxkeyword">.&nbsp;</span><span class="syntaxdefault">$url</span><span class="syntaxkeyword">);<br />}<br />&nbsp;</span><span class="syntaxdefault"></span>
Y'a pas que Apache dans la vie :)
 
WRInaute occasionnel
spout a dit:
Si t'as aucune page avec QUERY_STRING:
PHP:
<span class="syntaxdefault"><br /></span><span class="syntaxkeyword"><?</span><span class="syntaxdefault">php<br />if </span><span class="syntaxkeyword">(!empty(</span><span class="syntaxdefault">$_SERVER</span><span class="syntaxkeyword">[</span><span class="syntaxstring">'QUERY_STRING'</span><span class="syntaxkeyword">]))</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">{<br /></span><span class="syntaxdefault">    $url </span><span class="syntaxkeyword">=</span><span class="syntaxdefault"> </span><span class="syntaxstring">'...'</span><span class="syntaxkeyword">;<br /></span><span class="syntaxdefault">    header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'Status: 301 Moved Permanently'</span><span class="syntaxkeyword">);<br /></span><span class="syntaxdefault">    header</span><span class="syntaxkeyword">(</span><span class="syntaxstring">'Location: '</span><span class="syntaxdefault"> </span><span class="syntaxkeyword">.</span><span class="syntaxdefault"> $url</span><span class="syntaxkeyword">);<br />}<br />&nbsp;</span><span class="syntaxdefault"></span>
Y'a pas que Apache dans la vie :)

Bonjour ;)

Ou dois-je placer le code ? sur l'index ? et si possible entre quoi et quoi ?

Merci :wink:
 
WRInaute accro
Dans un des scripts appelé partout sur ton site, le plus souvent un header.php/prepend.php qd c'est +/- bien fait.
Ça dépend, il y a trop de façons de faire, c'est ton site :)

Edit: ouais non qd on regarde ton site t'as probablement pas utilisé de header commun, le copier/coller a encore gagné :lol:
 
Discussions similaires
Haut