@samsvin

Настроить запрет к картинкам на сервере через nginx?

Нужно запретить на текущем сайте sitq1 запретить открывать картинки через браузер, а на сайте site2 разрешить превьюшки с site1

Ковыряю nginx, не выходит не фига, с дефолтной конструкцией не могу настроить

location / {
proxy_pass http://000.000.000.000:8080;
location ~* ^.+\.(jpg|jpeg|txt|png|gif|bmp|ico|svg|tif|tiff|css|js|htm|html|ttf||mpg|wmv|exe|iso|dmg|swf)$ {
root /home/admin/web/site1/public_html;
access_log /var/log/httpd/domains/site1.log combined;
access_log /var/log/httpd/domains/site1.bytes bytes;
expires max;
try_files $uri @fallback;
}
}

если из первой убрать jpg, и дописать условие то блокирует на site2

location ~* ^/m/.+\.(js|jpg)$ {
valid_referers none blocked site2 *.site2;
if ($invalid_referer) {return 403;}
}
  • Вопрос задан
  • 163 просмотра
Пригласить эксперта
Ответы на вопрос 1
@bes_internal
webdev: perl, gentoo, html/css
для site1:
location ~* .*\.(jpg)$ {
valid_referer site2;
if ($invalid_referer) {return 403;}
root ...
...
}

Т.е убрали none (пустой рефер).
Получили логику: если рефер с сайта2, то отдать, иначе вернуть 403.
Всё просто
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы