folkadanse

Bloquer l'affichage de sa page dans un autre site ?
« le: 31 October 2016 09:42:06 »
Bonjour,

Je cherche à empêcher que la page
http://folkadanse.free.fr/airial.php
soit affichée par
http://fgadmt.wixsite.com/trad33/airial

J'ai essayé avec un ficher .htaccess :
- à la racine du site : bloque tout mais c'est normal
- dans un dossier (images) avec le code :
RewriteEngine on
# Options +FollowSymlinks
RewriteCond %{HTTP_REFERER} wixsite\.com [NC]
RewriteRule .* - [F]

ou un deny reste sans effet.

J'ai essayé du php :
<?php
if (isset($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER'] != 'folkadanse.free.fr')
{
echo 
"Eexcuting code here";
} else {
echo(
'Hot Linking Not Permitted');
// display some message / image / video
exit;
}
?>

ma page m'affiche "Hot Linking Not Permitted"

Si quelqu'un a une solution, merci d'avance.

fabfree

Re : Bloquer l'affichage de sa page dans un autre site ?
« Réponse #1 le: 31 October 2016 11:06:10 »
Tu ne peux pas bloquer son téléchargement.
Mais tu peux modifier dynamiquement la page lorsque le visiteur provient de ce site (identifié par son adresse IP). Dans ce cas tu affiches une page vide ou un message " aller sur l'excellent site Arial pour consulter le calendrier des manifestations à venir".

Il te faut tracer les visiteurs de ta page pour récupérer l'adresse IP du site pirate, en voici une base
<?php
class Traces {
private $fichier;
private $fd;
function DefinirFichierTraces ($f){
$this->fichier $f;
$this->fd = @fopen($f"a+");
return($this->fd) ;
}
function Ajouter($new_trace){
$data $new_trace ."\n"
fputs($this->fd$data);
fclose($this->fd);

/* fin class Traces */

$traces = new Traces;
$traces->DefinirFichierTraces("./traces.html");

$Horodate("; d M y H:i:s ;"). " ; ";
$donnees$Horo' <a href="' .$_SERVER['HTTP_REFERER'] .'" target="_blank">'.$_SERVER['HTTP_REFERER'] . '</a>''; <a href="http://whatismyipaddress.com/ip/' .$_SERVER[REMOTE_ADDR] .'" target="_blank">'.$_SERVER[REMOTE_ADDR] . '</a>' " ; " $HTTP_USER_AGENT ."<br/>";
$traces->Ajouter($donnees);

?>
Tu l'insères dans ta page, et l'adresse de tes visiteurs sera mémorisée dans traces.html.

folkadanse

Re : Bloquer l'affichage de sa page dans un autre site ?
« Réponse #2 le: 31 October 2016 12:18:59 »
Merci d'avoir répondu si rapidement mais j'ai une erreur que je ne sais pas résoudre :
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /mnt/130/sdb/e/5/folkadanse/test.php on line 3

fabfree

Re : Bloquer l'affichage de sa page dans un autre site ?
« Réponse #3 le: 31 October 2016 15:51:16 »
sans le contenu de ton php, je peux simplement dire que c'est probablement une erreur de syntaxe, genre un simple ou double guillemet, ou un ; mal placé ou manquant, ou encore un nom mal écrit.


folkadanse

Re : Bloquer l'affichage de sa page dans un autre site ?
« Réponse #4 le: 31 October 2016 22:54:44 »
@fabfree
L'erreur venait de la version php : j'avais la version 4.4.3-dev et avec le .htaccess j'ai la 5.6.8 et il n'y a plus d'erreur, le fichier traces.html est créé et la page détournée est bloquée.
Mais j'ai sorti le .htaccess car les caractères accentués affichaient des losanges noirs.

@ghecDes3
J'ai plusieurs lignes :
Warning: Cannot modify header information - headers already sent by (output started at /var/www/sdb/e/5/folkadanse/airial.php:13) in /var/www/sdb/e/5/folkadanse/airial.php on line XX

Merci encore à tous les deux pour votre aide.


folkadanse

Re : Bloquer l'affichage de sa page dans un autre site ?
« Réponse #5 le: 01 November 2016 12:49:41 »
C'est bon, ça marche !
En fait airial.php c'est essentiellement du code html avec du php uniquement pour interroger la base sql et générer les lignes du tableau.
j'ai placé ton code en tout début (avant <!DOCTYPE html>) et le site indélicat affiche un cadre vide sans erreur sur le mien.

Un grand merci !