Bonjour,

Je cherche à récupérer des images stockées sur un de mes serveurs web via file_get_contents (allow_url_fopen est bien configuré à On dans php.ini).
Le souci est que ce second serveur Apache est configuré pour tester le Referer (limite le vol d'images):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
NameVirtualHost *
<VirtualHost *>
  ServerName xxxx.mondomaine.com
 
  SetEnvIf Referer "^http://[a-zA-Z0-9]+\.mondomaine\.com/" local_referal
  <Directory /path/>
    Order Deny,Allow
    Deny from all
    Allow from env=local_referal
  </Directory>
</VirtualHost>
Du coup, je ne récupère que des erreur 403 Forbidden.

D'après la doc de file_get_contents, il est possible de préciser un contexte, c'est la dessus que j'aurais besoin d'un coup main:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
$contextOptions = array(
	'http'	=> array(
		'host'		=> 'xxxx.mondomaine.com',
		'method'	=> 'GET',
		'referer'	=> 'http://xxxx.mondomaine.com/index.php'
	)
);
$context = stream_context_create($contextOptions);
$img = file_get_contents($url, false, $context);
Comment configurer $contextOptions ???