Salut Internaute,

J'ai découvert à l'instant l'instruction valid_referers de Nginx qui permet de contrôler l'accès par referer sur une certaine location.

C'est une instruction qui peut s'avérer très pratique et qui permet de retourner un Accès interdit (403) pour quiconque tente d'afficher une image de ton serveur, depuis un autre domaine que celui défini (ici tous les sous domaines de domaine.com).

Voici un exemple de la configuration d'un vhost générique avec php-fpm:

server {
server_name domaine.com;
access_log /var/log/nginx/domaine.com-access.log;
error_log /var/log/nginx/domaine.com-error.log;

location ~* (.jpg|.png|.gif|.jpeg)$ {
valid_referers none blocked *.domaine.com;
if ($invalid_referer) {
return 403;
}
root /var/www/domaine.com/htdocs;
}

location / {
root /var/www/domaine.com/htdocs;
index index.php;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?p=$1 last;
break;
}
}

location ~ .php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/domaine.com/htdocs$fastcgi_script_name;
}
}

Toujours pratique d'avoir ça dans son sac!

Allez, salut!