Есть конфиг, в целом обычный, выглядит так
server {
…
location / {
try_files $uri @fcgi;
}
# Тут отдаются генерируемые изображеньки
location ~* ^/generated/[^/]+\.gif$ {
fastcgi_pass unix:/var/run/php-fpm/default.socket;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
fastcgi_param PATH_INFO $uri;
}
# А тут отдаётся статика
location ~* \.(png|jpg|jpeg|gif)$ {
valid_referers none blocked olala.com IP.IP.IP.IP;
if ($invalid_referer) {
rewrite ^(/images/gtfo.jpg)$ $1 break;
rewrite ^.*$ /images/gtfo.jpg permanent;
}
}
…
location @fcgi {
fastcgi_pass unix:/var/run/php-fpm/default.socket;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root/index.php;
fastcgi_param PATH_INFO $uri;
}
}