Equivalent de .htaccess ? [ASP] - ASP - Programmation
Marsh Posté le 07-03-2005 à 09:04:25
Marsh Posté le 07-03-2005 à 12:07:36
Alors, j'ai pas le code sous la main, mais grossomodo :
1/ Cherche un ActiveX nommé "binreader" ou un truc du genre, qui permette de lire en mode binaire un fichier.
2/ Déplace toutes tes images EN DEHORS de ton répertoire IIS (mettons que ton site est dans D:\WEBSITE, mets les images dans D:\IMAGESWEB.
3/ Crée un fichier "picture.asp" prenant en paramètre "nomImage" (qui va contenir l'adresse relative de ton image à partie de D:\IMAGESWEB, ou alors un numéro, allant dans une table rechercher le nom complet de l'image -ou même)
4/ Dans ce fichier, fait :
IF Split(Request.ServerVariables("HTTP_REFERER" ), "/" )(2) <> Request.ServerVariables("HTTP_HOST" ) THEN
' Ca doit pas être exactement ça, cherche la syntaxe exacte, afin de comparer le nom du serveur REFERER et le nom du serveur de ton site.
Dans ce IF, fait un :
Response.BinaryWrite binRead("D:\IMAGESWEB\" & Request.QueryString("nomImage" ))
Et dans le ELSE, tu fais :
Response.BinaryWrite BinRead("D:\IMAGESWEB\foulecamp.gif" )
avec cette image qui affiche un truc style : "Les liens directs vers ma galerie d'image sont interdits"
Ainsi, les gens devront passer par ton site pour afficher les images.
PS: Si un petit malin modifie son header avant d'accéder à ton image, il sera potentiellement capable de la voir tout de même. Reste à voir si ça arrive souvent. Dans le doute, dans la page "default.asp", ajoute "session("CANSEEPICTURES" ) = true, et ajoute un test sur cette variable de session dans la page "picture.asp".
Ensuite, dans tes pages, au lieu d'utiliser par exemple :
<img src="/pictures/monimage.jpg">, tu utiliseras alors :
<img src="picture.asp?nomImage=\monImage.jpg">
Je peux pas détailler plus, j'ai des soucis d'hébergeur actuellement, donc je ne peux pas accéder à mon site
Marsh Posté le 07-03-2005 à 13:33:55
Ouille...Y a pas plus simple ? car mon site a des milliers d'images, je me vois toutes les changer d'url ^^
Marsh Posté le 07-03-2005 à 15:04:44
jey_skywaker a écrit : Ouille...Y a pas plus simple ? car mon site a des milliers d'images, je me vois toutes les changer d'url ^^ |
ya plus simple: instal apache ou change d'hebergeur
Marsh Posté le 07-03-2005 à 15:33:10
Ouch 49$. C'est dingue, il existe pas l'équivalent gratuit de htaccess ?
Marsh Posté le 07-03-2005 à 16:08:22
Ah ok, j'avais pas vu, merci de la précision
Marsh Posté le 07-03-2005 à 16:23:07
La version gratuit n'a pas les fonction proxy et le htaccess est pour tout le server... pas par site...
Marsh Posté le 07-03-2005 à 16:36:06
Moi je maintiens que mon truc il est plus mieu
Comme ça, en plus, selon des droits dans la base, je bloque l'accès aux images si l'utilisateur n'a pas accepté la charte spécifique à l'image, je n'affiche pas les images à caractère pornographique à ceux qui n'ont pas certifié être majeur ets. .htaccess ça fait pas ça, c'est d'la merde Et en plus, en ajoutant un simple paramètre, je peux afficher la version "complète" ou la miniature à la place ça m'évide de jongler avec des répertoires.
Sans parler de la liste des sites authorisés à linker les images directement, qui sont paramètrage, je suis loin d'être sûr qu'un .htaccess le fasse.
Bref, c'est naze votre bidule
Marsh Posté le 07-03-2005 à 17:07:35
Sauf quand ton site est énorme et a 5 ans de vécu derrière lui
Marsh Posté le 07-03-2005 à 17:19:27
fabien a écrit : ya plus simple: instal apache ou change d'hebergeur |
Marsh Posté le 07-03-2005 à 17:23:18
Arjuna a écrit : je suis loin d'être sûr qu'un .htaccess le fasse. |
Bah, à la limite tu fais de l'URL-rewrite avec le htaccess pour rediriger les appels aux images vers une page PHP, et t'as exactement les mêmes avantages que ta solution ASP sans l'immense inconvénient de devoir modifier les liens existants Et si je veux rajouter un param, pas de problème, je peux le faire aussi sur l'URL existante puisque l'URL-rewrite va gentillement tout transformer comme il faut.
Au passage, utiliser une page .asp avec des params ça ne risque pas de nuire à la liste en cache des images ?
Marsh Posté le 07-03-2005 à 17:26:46
J'aime pas le cache
Sinon, non, on peut spécifier dans la page ASP de mettre en cache, donc y'a pas de souci.
Marsh Posté le 07-03-2005 à 17:29:07
Arjuna a écrit : J'aime pas le cache |
C'est pourtant bien utile pour les images (imagine un peu si toutes les icônes et images de ce forum n'allaient pas en cache...)
Marsh Posté le 07-03-2005 à 17:37:39
Ben y'aurais pas la moitié des gens qui se plaidraient de pas voir les nouvelles icônes quand elles changent
Nan, plus sérieusement, je travaille souvent avec des sites dont les images sont dynamiques, et lorsque le cache est activé, bonjour le bordel, les pagent s'affiche n'importe comment
Marsh Posté le 07-03-2005 à 18:00:39
Bonjour les pbs de bande passante s'il n'y avait pas le cache surtout
Marsh Posté le 06-03-2005 à 20:40:09
Bonjour à tous !
Souhaiter limiter mon problème de bande passante trop importante sur mon site web, je chercher à restreindre l'accès au fichier depuis l'extérieur. En gros, si un site web X affiche directement une image de mon site, je veux que ça donne une erreur 404 sur l'image ou que ça affiche une image que j'aurai choisi (du style, "merci de ne pas leecher mon site ^_^). Bref, j'ai entendu parler de .htaccess sur Apache, comment puis-je faire pareil mais sous IIS/ASP ?
Merci d'avance,
Jey.
---------------
L'univers de Starwars est désormais à votre portée !