У меня есть следующее правило перезаписи антипиявки в Apache, которое я хотел бы иметь в nginx. Я вижу примеры правил для файлов cookie или реферера. Но ни один из них не сочетает оба, поэтому я не знаю, как это сделать.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^$ [OR]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?domain\.com.*$ [NC]
RewriteCond %{HTTP_COOKIE} !^.*_.*$
RewriteRule \.(flv|jpg|jpeg|mp3|mpg|mp4|mov|wav|wmv|png|gif|swf|css|js|htc|woff|otf|eot|ttf)$ - [F,NS,L]
</IfModule>
Это немного смягченное правило, которое позволяет пустым ссылкам, отправленным с известным файлом cookie (_
для примера). Но он откажет в доступе без установленного файла cookie при использовании недействительных рефереров домена.