-1

I need to protect from hotlinks in my php site.? how Can i achieve this ?? Iam using nginx as webserver .. If I try to view site.com/uploads/image.jpg without login I can able to see images in browser ,I need to prevent direct folder accessing without login .

my project structure

site
    -index.php
    -uploads/image.jpg....
    -css/
    -js/

site.conf

server {

    listen site.com;

    server_name site.com;



    root /home/vijo/Music/PHP/site;

    index index.php index.html index.htm;



    keepalive_timeout 70;

    access_log /home/vijo/Music/PHP/site/log/access.log;

    error_log /home/vijo/Music/PHP/site/log/error.log;





    # Make site accessible from http://localhost/



   location / {

            try_files $uri $uri/ @rewrite;

            expires max;

    }



    location @rewrite {

            rewrite ^ /index.php;
    }



    location ~ \.php$ {

            fastcgi_split_path_info ^(.+\.php)(/.+)$;

            fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

            fastcgi_index index.php;

            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

            include fastcgi_params;

    }



    location ~ /\.ht {

            deny all;

    }

}

vijoy
  • 1
  • 2

1 Answers1

0

Sample config looks like
Refer: https://thebarton.org/prevent-hotlinking-nginx/
http://techgirlkb.guru/2017/08/preventing-site-mirroring-via-hotlinking/

location ~* \.(gif|png|jpe?g)$ {
expires 7d;
add_header Pragma public;
add_header Cache-Control "public, must-revalidate, proxy-revalidate";
# prevent hotlink
valid_referers none blocked ~.google. ~.bing. ~.yahoo. server_names ~($host);
if ($invalid_referer) {
rewrite (.*) /static/images/hotlink-denied.jpg redirect;
# drop the 'redirect' flag for redirect without URL change (internal rewrite)
}
}
# stop hotlink loop
location = /static/images/hotlink-denied.jpg { }
Michael Hampton
  • 244,070
  • 43
  • 506
  • 972
  • I tried with this conf ,still its not blocking !!!!! – vijoy Mar 22 '18 at 05:29
  • above there is nginx site conf of my php site . where do i change settings prevent access to my uploads folder ?? to prevent **site.com/uploads/imagename.extension ??** – vijoy Mar 22 '18 at 06:19