Lien externe comme un lien interne ?

Nouveau WRInaute
Bonjour,

J'ai fais une rapide recherche sur ce forum et je n'ai pas trouvé solution à mon problème que voici :


Lorsque je fais une RewriteRule d'une url interne vers une url externe comme ceci :

Code:
Options +FollowSymlinks
RewriteEngine on 
RewriteRule   ^images/(.+)$  http://mon_autre_site.com/$1   [L]

Je suis confronté à 2 problèmes :

- En mettant la "fausse" url dans la barre d'adresse, celle-ci se change en la "vraie" url.
- En faisant un clique droit > propriétés sur une image, on voit la "vraie" url et non la "fausse".

J'aimerai que ce RewriteRule ce comporte comme un RewriteRule d'une url interne vers une url interne. C'est à dire que l'url ne se change pas dans la barre d'adresse et que le clique droit sur une image m'affiche la fausse url et non la vraie.
 
Nouveau WRInaute
Re,

Pourtant pour le clique droit j'ai trouvé une solution aujourd'hui, un peu tordu je l'avoue, mais ça fonctionne :

Mon .htaccess :
Code:
Options +FollowSymlinks
RewriteEngine on 
RewriteRule   ^(.+).jpg$  redirect.php?image=$1  [L]

Mon redirect.php :
Code:
<?
header("Content-type: image/jpeg"); 
header("Location: http://mon_autre_site.com/".$image); 
?>

page.html :
Code:
<html><body>
<img src="image.jpg">
</body></html>


Et bien lorsque j'execute page.html, je fais clique droit sur l'image, l'url affiché est :
http://monsite.com/image.jpg.

Ceci règle le deuxième problème. Par contre, si je recopie http://monsite.com/image.jpg dans la barre d'url, celle-ci se transforme en http://mon_autre_site.com/image.jpg


Je pensais lire l'image à partir de fonctions tel que fopen mais voici ce que me répond mon hébergeur :
mon hébergeur a dit:
Warning: fopen() [function.fopen]: URL file-access is disabled in the server configuration


Il n'existe pas une option dans l'url rewriting qui permet d'empécher la redirection ? :/
 
WRInaute passionné
tu peux essayer avec :
Code:
<?php
header("Content-type: image/jpeg");
readfile("Location: http://mon_autre_site.com/".$image);
exit;
?>
le risque est que le temps de chargement soit allongé puisque l'image passera par le serveur de ton site (si les deux sites sont gérés sur le même serveur ou hébergeur pas forcément de problème).
 
Nouveau WRInaute
Voila l'erreur qu'il m'affiche :

Code:
Warning: readfile(Location: http://mon_autre_site.com/image.jpg) [function.readfile]: failed to open stream: No such file or directory in /chemin_relatif_de_mon_site/redirect.php on line 4

Cependant, il semble avoir trouvé les dimensions de l'image : j'ai un énorme carré blanc de la taille de mon image avec un ptit carré rouge en haut. Comme quans je mets la règle R=301...
 
WRInaute passionné
c'est une erreur de copier-coller. Le paramètre de readfile est l'url de l'image :
Code:
<?php
header("Content-type: image/jpeg");
readfile("http://mon_autre_site.com/".$image);
exit;
?>
 
Nouveau WRInaute
Je crois que mon hébergeur n'accèpte pas du tout de pouvoir lire des fichiers de l'extérieur :

Code:
Warning: readfile() [function.readfile]: URL file-access is disabled in the server configuration in /chemin_relatif_de_mon_site/redirect.php on line 4
 
WRInaute discret
Bonjour,
je remonte ce topic car il est en rapport avec un problème que je rencontre.
J'affiche une image dans une page via un script php d'une autre page avec un readfile ; comme décrit dans le topic. Et je suis confronté a un problème de lenteur d'affichage de l'image (comme en parlait webmasterlamogere). Seulement mes images son hebergé sur le même site que la page, je ne vois donc pas pourquoi elles s'affichent plus lentement quand je fais ça que quand je mets directement l'url de l'image dans le src= :?

Quelqu'un a une idée ?
 
WRInaute discret
Non pourtant je mets l'url exacte de l'image dans le readfile.
Ce qui est plus bizarre, c'est que d'une, l'affichage est plus lent la première fois que j'appelle la page et de deux lorsque je reviens sur la même page, les images s'affichent directement (surement grâce au cache) mais apparemment le navigateur tente de les recharger car je vois une espèce de ligne balayer l'image de haut en bas :?
 
WRInaute discret
Je l'avais mal noté dans le post mais j'ai bien mis le point et le slash avant le dossier et les cotes dans mon code.
Mais ça n'a pas plus d'effet.
 
Discussions similaires
Haut