Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Защита картинок от прямого скачивания
On Wed, Oct 21, 2009 at 04:09:35PM +0400, Евгений Осипов wrote:
> ОС: Windows Server
> NGINX Fronted
> Apache BackEnd
>
> Имеется следующий конфиг:
>
> worker_processes 1;
> error_log D:/Server/Nginx/logs/error.log;
>
> events {
> accept_mutex off;
> }
>
>
> http {
> include mime.types;
> default_type application/octet-stream;
>
> log_format main '$remote_addr - $remote_user [$time_local]
> $request '
> '"$status" $body_bytes_sent "$http_referer" '
> '"$http_user_agent" "$http_x_forwarded_for"';
>
> sendfile on;
> keepalive_timeout 0;
>
> gzip on;
> gzip_min_length 1100;
> gzip_buffers 64 8k;
> gzip_comp_level 3;
> gzip_http_version 1.1;
> gzip_proxied any;
> gzip_types text/plain application/xml application/x-javascript
> text/css;
>
>
> server {
> listen 80;
> server_name tvorite.ru www.tvorite.ru;
> #access_log off;
> #error_log off;
> access_log D:/Server/Nginx/logs/access_tvorite.log;
> error_log D:/Server/Nginx/logs/error_tvorite.log;
>
> # Main location
> location / {
> root D:/Server/Apache/htdocs;
> index index.php;
> client_max_body_size 200M;
> client_body_buffer_size 16k;
> proxy_pass http://127.0.0.1:81;
> proxy_set_header Host $host;
> proxy_set_header X-Real-IP $remote_addr;
> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
> }
>
> # Static files location
> location ~*
>
> ^.+\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js)$
> {
> root D:/Server/Apache/htdocs;
> expires 30d;
> }
>
> }
>
> Когда добавляю следующую строчку в конфиг:
>
> location ~ \.(jpg|gif|png)$ {
> valid_referers none blocked server_names ~\.google\. images.yandex.ru;
> if ($invalid_referer) {
> rewrite ^(.*)$ /img/invalid_referer.png redirect;
> }
> }
>
> изображения вообще пропадают.
>
> Что я делаю не так?
root D:/Server/Apache/htdocs;
можно вынести на на уровень сервера или добавить в
"location ~ \.(jpg|gif|png)$".
Из
location ~* ^.+\.(jpg|jpeg|gif|png|...
нужно убрать "jpg|gif|png".
--
Игорь Сысоев
http://sysoev.ru
|