Generic placeholder image
闲敲代码、落灯花
What's past is prologue

联系邮箱:email@hezehua.net


联系QQ:1907330840

座右铭

保持热情,持续学习,每日精进

Nginx设置Laravel项目中图片防盗链以及禁止地址栏直接访问图片

Nginx设置Laravel项目中图片防盗链以及禁止地址栏直接访问图片

本文与作者在csdn上的博文【Nginx设置Laravel项目中图片防盗链以及禁止地址栏直接访问图片】保持同步


为了防止图片盗用,禁止外链以及禁止地址栏直接访问图片是必不可少的方案,当然这样的限制还比较基础,还是有别的途径可以盗图的,更多的限制之后会追加,现在先做好这两个基础防护。

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
            valid_referers server_names  *.abc.com *.abc.cn *.so.com *.baidu.com *.bing.com *.google.com *.sogou.com xx.xxx.xxx.xxx;
            if ($invalid_referer) {
                #rewrite ^/ http://www.abc.com/403.jpg;
                return 403;
            }
            root           /home/laravel/public;
            expires 30d;
        }

备注:
valid_referers:设置合法的referer列表,值可以是域名(不带协议头)、IP、server_names(表示当前域名)、正则表达式
$invalid_referer:当不符合valid_referers列表时,该值为1
expires:图片的浏览器的缓存时间

猜你喜欢
tar打包的时候忽略一些目录
阅读 238

tar打包的时候忽略版本管理文件目录、日志文件目录、storage/app目录 tar -zcvf web.tar.gz web --exclude-vcs --exclude=storage/logs --exclude=storage/app

centos 中查找文件、目录、内容
阅读 280

1、查找文件 find / -name 'filename' 2、查找目录 find / -name 'path' -type d 3、查找内容 find . | xargs grep -ri 'content' //find . | xargs grep -ril 'content...

openssh升级后无法登陆解决方案
阅读 259

1、openssh升级后,终端登陆会提示:WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 应该在终端的~/.ssh/known_hostswe文件中将服务器ip对应的公钥信息删除再尝试登陆。 2、解决WARNING: REMOTE HOST I...

记一次Git pull之后Permission denied的解决方案
阅读 204

上下文: 在我的一台linux服务器上配置了git服务器,并且在本机上运行一个网站,这个网站的git库就是本机的git服务器,本来将本机的公钥加入到git服务器的authorized_keys文件中了(root角色操作),可以无密码使用git远程库,而且为了安全性禁止git账户shell...

unzip命令常用参数
阅读 181

1、-l:显示压缩文件内所包含的文件; 2、-t:检查压缩文件是否正确; 3、-o:不必先询问用户,unzip执行后覆盖原有的文件; 4、-n:解压缩时不要覆盖原有的文件; 5、-q:执行时不显示任何信息; 6、-d<目录>:指定文件解压缩后所...

Centos新建用户无法ssh登陆
阅读 197

如题,最近使用AWS搭建web server,原先是root用户,添加了一个develop用户组,并添加了一个开发人员账户:testname,然而却无法使用ssh登陆。查看了各种解决办法都没有效果,最终我从 /etc/passwd 文件中root和testname账户后面的参数分别为/bin...

编写.gitignore文件
阅读 231

有时候我们并不想要把一个项目都提交到git上,比如一个基于当前服务器的配置,当项目迁移到另一个服务器上时,这个配置相应变成了与另一个服务器相关的,如果在提交到git服务器时连同该配置一同提交,就很容易因为未及时修改而发生错误。这时候,就需要使git不提交该文件,这就是 .gitignore的作用。...

查看占用指定端口的程序
阅读 167

netstat -lntup | grep 8080