Rewriting de fichier image vers fichier de script

WRInaute accro
Bonjour

Suite à ce fil, je poste ma détresse ici :oops: car là je ne capte pas pourquoi ça marche pô.


Voici ma config :

- un répertoire contenant des images (qui peuvent être utilisées sur plusieurs domaines, mes domaines, donc le htaccess doit être logiquement placé dans ce répertoire)

- dans ce répertoire :
Code:
/cache_img/
/share/
hotlink.php
.htaccess
image1.jpg
image2.jpg
etc...

Je ne reviendrai pas sur le principe (protection des images hotlinkées par apposition d'un watermark depuis le script, voir le fil initial en lien ci-dessus) mais en gros, ce que je n'arrive pas à faire, c'est "remplacer" toute image en .JPG par ce satané script !!!

Voici le code du htaccess :

Code:
Options +FollowSymlinks
RewriteEngine on 

# Gestion des hotlinks d'images
RewriteCond %{HTTP_REFERER} !^$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(www.|blog.|reportages.)?aube-nature.com [NC]
RewriteCond %{HTTP_REFERER} !^http://(www.|photos.)?chatterie-koolkat.com [NC]
RewriteCond %{HTTP_REFERER} !^http://(www.)?koolkat.fr [NC]
RewriteCond %{HTTP_REFERER} !^http://(www.)?mainecoon.fr [NC]
RewriteCond %{HTTP_REFERER} !^http://images\.google\..*$ [NC]
RewriteRule .*\.jpg$ /hotlink.php?img=%{SCRIPT_FILENAME}&ref=%{HTTP_REFERER}


J'ai même essayé (pour tester) de faire :

Code:
RewriteRule .*\.jpg$ mon-image.jpg

Mais ça ne fonctionne QUE lorsque c'est "mon-image.jpg" est hotlinkée !!!

JE CRAQUE :evil:
 
WRInaute accro
BON !

J'ai trouvé la cause mais je n'ai pas trouvé la soluce :mrgreen:

En analysant mes logs Apache, erreur 404 (et je pense que ça vient de l'endroit où il va "chercher" mon script !) :

Code:
GET /home/users/c/cedricg/www/photos/photos/hotlink.php?img=/home/users/c/cedricg/www/photos/photos/3373.jpg&ref=http://www.(domanie otlinkeur) HTTP/1.1" 404 9344 "http://www.(domaine hotlinkeur)

Donc en clair, le path depuis la racine du serveur !

Alors que toutes les autres lignes du log vont bien chercher les fichiers à leur niveau propre !
 
WRInaute accro
RÉSOLU !!!


En fait j'ai (méthode bourrin) mis le chemin http complet dans mon htaccess, "tout simplement" !


Code:
RewriteRule \.(jpg)$ http://www.mondomaine.com/sousrep/hotlink.php?img=%{SCRIPT_FILENAME}&ref=%{HTTP_REFERER}

Purée, c'était si simple 8O
 
WRInaute impliqué
Tu peux enlever htt*p://www.domaine.com au début du second paramètre car, en le mettant, tu crées une redirection.

Il faut que ton second paramètre commence avec "/photos" (c'est ce qu'on appelle l'adresse relatif à la base) et visiblement ton serveur nécessite ce type d'adressage dans l'UR.
 
WRInaute accro
Si je ne fais pas cela, cela ne fonctionne pas...

Pour la redirection, ça ne pose pas de problèmes particuliers non ? Au niveau SEO ? De toute façon je ne veux pas que Google (ou les autres) indexent mes images si elles ne sont pas affichées sur MES sites.

Ma problématique est que les images sont "accessibles" depuis DEUX niveaux (domaine et sous-domaine pointant sur un sous-répertoire du domaine !)
 
WRInaute accro
J'ai essayé aussi, mais ça n'a pas fonctionné (dixit le log Apache... qui va toujours me rechercher mes fichiers depuis la racine du serveur !)
 
Discussions similaires
Haut