Image externe et SSL

Rian

Nouveau WRInaute
Bonsoir à tous,

je viens à vous car ce que je veux dépasse mes capacités ...
J'ai peut-être une idée, mais je ne sais même pas si ca peu marcher donc bon, je vous expose le soucis et l'idée.


J'ai sur mon site une certif SSL vérifié. Tout fonctionne bien, sauf quand j'affiche du contenu NON AUTHENTIFIE. Je dois donc enlever toutes les images externe à mon site, seulement je veux toujours les afficher, car il y a les avatar de mes membres, les présentations que les membres postent etc ....

J'aurai aimais savoir si on pouvais grugé le webbrowser en réécrivant l'url de l'image externe en https://www.monsite.net/img=http://www.siteexterne/com/....jpg mais qu'il affiche toujours l'image du site et de surcroit, passe donc en authentifié ?

Si c'est pas une bonne solution je suis tout ouie, que ce soit en rewriting ou autre ...

Amicalement Rian

PS : et un "proxy" sur mon site ? enfin je parle sans connaitre, mais j'avais crue entendre ca un jour
 

jcaron

WRInaute accro
L'idéal c'est que tu copies les fichiers en question localement (avoir des avatars et autres éléments de ce genre en externe c'est quand même bizarre...). Sinon avec une réécriture, si c'est pour faire une redirection, ça ne va rien changer, donc effectivement il faut faire du proxying, mais ça veut dire que tu "couvres" avec ton certificat du contenu externe sans le vérifier, pas forcément une bonne idée.

Mais la question de base, c'est vraiment: pourquoi mettre du SSL sur un serveur qui visiblement n'en a pas plus besoin que ça.

Jacques.
 

Rian

Nouveau WRInaute
Je sais, ca peu paraitre étrange, mais ca sécurise pas mal la chose, sachant que je suis administrateur d'une communauté assez paranoïaque, je me dois de mettre quelqu'un chose en place.

Pour ce qui est des avatars, ils faut mettre l'url de l'image dans le champ correspondant, et donc, puisque je ne fais aucun traitement dessus, il affichera l'image de l'url entré par l'utilisateur ...
Pour copier les fichiers localement, y a t-il des "fonctions" etc ... ?


Le seul truc que je couvre, ca sera des images.

Pour la réécriture, non je ne veux pas faire de redirection, enfin, je veux juste affiché les images mais avec une URL appartenant à mon site, mais je pense que c'est pas possible, puisque, il ne connaitra plus le site qui contient l'image ...
 

Rian

Nouveau WRInaute
Un ami viens de me parler d'un truc,

la réécriture + utilisation d'un script wget et il ma dis aussi : "pense à  mettre un md5(sha1 + sel_secret) pour eviter le wget de n 'importe quel element"
Mais la j'ai pas très bien compris ...

Mais en effet, c'est une méthode, je suppose que ca rejoins ton idée "L'idéal c'est que tu copies les fichiers en question localement "
 

Julia41

WRInaute passionné
@Rian, c'est tout à fait possible et c'est d'ailleurs une sorte de proxy.

J'avais un petit script qui fonctionnait très bien.
-http://cache.guiks.net/cache.php?c=http://www.cinemotions.net/data/films/0257/58/1/affiche-Survie--les-naufrages-Three-2005-4.jpg

Tu peux y accéder en SSL https mais le certificat est périmé (le site a été fermé donc je n'ai pas renouvellé).

Le gros avantage est que ça cache en "local" donc ça évite ceux qui mettent des avatars étant hébergés sur des serveurs de merde qui mettent 3h à se charger.

Le script n'est pas très compliqué à utiliser.
C'est dispo sur ce SVN svn.sifuture.net/sif ou Sifuture
et le dossier devrait être : sif/trunk/third_party/cache

Edit: Après dans ton parser bbcode, tu ne fais plus un http?s mais tu fais 2 parseurs différents pour les images, l'un HTTP, l'autre HTTPS.
pour les avatars, si tu proposes un système d'upload d'image tu checks si https, sinon tu dégages en disant à l'utilisateur de l'héberger sur ton site.
 

Rian

Nouveau WRInaute
Au bah mince alors, j'avais pas pensé a utiliser deux fonctions différentes pour parser mon BBCode. Je vais voir si avec tinymce il va pas me gêner.
EDIT: Mais je dois donc mettre https si le port utilisé par le webbrowser est 443 mais est-ce que ca va passer ? car les images ne sont pas héberger chez moi ... mais sur allocine, un-prez.net, etc ?

Et sinon oui pour les avatar, je vais voir ton script que tu me fournis, sinon, je pensais faire une fonction qui télécharger l'image en taille YYxYY et remplacer l'url taper par l'utilisateur, par avatar/nom_de_l_image_d_l_user.XXX

Je vais voir ca après :) Je part au sport
 

Julia41

WRInaute passionné
Justement mon script fonctionne très bien pour allociné et autre générateur de prez, c'était d'ailleurs le but et le point bloquant (on contrôle pas ce que font les users).
Donc au niveau de mon bbcode, si l'image n'est pas https (et généralement elle ne l'est pas), on passe par le domaine de cache. Sinon, on passe par le lien direct https

Au niveau du parser (mais bon, je ne connais pas tinymce) ça donne ça :
Code:
		$this->search[] =	'/\[img=(https:\/\/[^\s\'\"<>?&()]+(\.(jpg|jpeg|gif|png|tif|tiff|bmp)))\]/is'; // [img=http://site.com/image.jpg]
		$this->replace[] =	'<img src="$1" alt="" onload="Scale(this,650);" onclick="Scale(this,650);" />';
		$this->strip[] =	'';
		
		$this->search[] =	'/\[img=(http:\/\/[^\s\'\"<>?&()]+(\.(jpg|jpeg|gif|png|tif|tiff|bmp)))\]/is'; // [img=http://site.com/image.jpg]
		$this->replace[] =	'<img src="'.CACHESERVER.'/cache.php?c=$1" alt="" onload="Scale(this,650);" onclick="Scale(this,650);"/>';
		$this->strip[] =	'';
avec CACHESERVER défini comme -https://cache.guiks.net/
 

Rian

Nouveau WRInaute
Un grand MERCI à Julia41.

Grace à toi, tout marche impec ;)
En plus de ca, le script ne recherche pas les images, ca c'est le top.

PS : pour ceux qui voudrais faire pareil, y a rien de plus simple (si si, car si vous voulez faire ca, c'est que vous vous y connaissait déjà assez).
EDIT : n'y a t'il pas moyen de mettre [Résolu] dans le sujet ?
 

Discussions similaires

Haut