宝塔php防盗链,宝塔面板利用nginx服务设置图片防盗链规则

2024-02-20 14:30

本文主要是介绍宝塔php防盗链,宝塔面板利用nginx服务设置图片防盗链规则,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

蓝卡手上有3台ECS,最近发现1台ECS的状态不太正常,负载、流量都有些偏高,这个ECS上的站点不多,流量最大的站点1天也就3000-4000的pv,站点的图片在上传钱也经过压缩,理论上资源消耗不会这么大。

曾经遇到过被反代的,已经能解决了,被DDOS的可能性也不大,剩下最大的可能就是被盗链了,经过排查,发现了1个网站,内容基本就是采集我的站点的,甚至图片都是直接调用的,看来宝塔默认的防盗链并没有起到效果,就准备自己进行操作。

1421268860.jpg

Nginx设置防盗链的方法

下面为完整代码#SECURITY-START 防盗链配置

location ~ .*\.(jpg|jpeg|gif|png|js|css)$

{

expires      30d;

access_log off;

valid_referers none blocked www.domain.com domain.com;

if ($invalid_referer){

rewrite ^/ https://rmt.dogedoge.com/fetch/*****.jpg;

#return 404;

}

}

代码解释

location ~ .*\.(jpg|jpeg|gif|png|js|css)$

(jpg|jpeg|gif|png|js|css)设置防盗链文件类型,可以自行修改文件类型,如果你还想添加其他防盗链内容,直接添加就可以,每个后缀用“|”符号分开!

valid_referers none blocked *.domain.com domain.com;

valid_referers none blocke后面的值是允许访问图片,也就是授权调用文件的域名。

就是白名单,允许文件链出的域名白名单,自行修改成您的域名!

建议将搜索引擎的域名也加入白名单,未测试有效性。

*.baidu.com *.google.com *.bing.com *.so.com *.sogou.com *.sm.cn *.toutiao.com

域名与域名之间使用空格隔开!

rewrite ^/ https://rmt.dogedoge.com/fetch/*****.jpg;

这个图片是盗链返回的图片,也就是替换盗链网站所有盗链的图片。

如果对方盗用你的图片,会显示一个默认图片,这个急救室默认图片。

切记,这个图片不能用你的域名,因为防盗链的作用,盗链者的网站所盗链图片会显示X符号。

nginx彻底地实现真正意义上的防盗链

但是这样并不是完全的防盗链,这只要通过浏览器直接输入图片地址,仍然会显示图片,仍然可以右键图片另存为下载文件!

我们来看第三行:valid_referers none blocked *.domain.com domain.com;

valid_referers 里多了“none blocked”

我们把“none blocked”删掉,改成

valid_referers *.domain.com domain.com;

nginx彻底地实现真正意义上的防盗链完整的代码应该是这样的:location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

{

valid_referers *.domain.com domain.com;

if ($invalid_referer) {

rewrite ^/ http://www.domain.com/images/404.jpg;

#return 404;

}

expires  30d;

}

重启nginx服务

设置完毕后,需要重启一次nginx服务让他加载防盗链规则。

LNMP的话可以使用/etc/init.d/nginx restart或者直接lnmp restart重启即可。

宝塔面板的话,在软件商店,运行环境里面找到nginx,点击,然后服务里面点击重启即可。

尾语

一顿操作后,效果已经实现,在对方网站上显示的防盗链图片还是不错的。「你访问的网站是盗版,请访问主站Domain.com」

the-end.png

这篇关于宝塔php防盗链,宝塔面板利用nginx服务设置图片防盗链规则的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/728525

相关文章

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

Spring LDAP目录服务的使用示例

《SpringLDAP目录服务的使用示例》本文主要介绍了SpringLDAP目录服务的使用示例... 目录引言一、Spring LDAP基础二、LdapTemplate详解三、LDAP对象映射四、基本LDAP操作4.1 查询操作4.2 添加操作4.3 修改操作4.4 删除操作五、认证与授权六、高级特性与最佳

Pyserial设置缓冲区大小失败的问题解决

《Pyserial设置缓冲区大小失败的问题解决》本文主要介绍了Pyserial设置缓冲区大小失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录问题描述原因分析解决方案问题描述使用set_buffer_size()设置缓冲区大小后,buf

基于Python实现高效PPT转图片工具

《基于Python实现高效PPT转图片工具》在日常工作中,PPT是我们常用的演示工具,但有时候我们需要将PPT的内容提取为图片格式以便于展示或保存,所以本文将用Python实现PPT转PNG工具,希望... 目录1. 概述2. 功能使用2.1 安装依赖2.2 使用步骤2.3 代码实现2.4 GUI界面3.效

Python实现AVIF图片与其他图片格式间的批量转换

《Python实现AVIF图片与其他图片格式间的批量转换》这篇文章主要为大家详细介绍了如何使用Pillow库实现AVIF与其他格式的相互转换,即将AVIF转换为常见的格式,比如JPG或PNG,需要的小... 目录环境配置1.将单个 AVIF 图片转换为 JPG 和 PNG2.批量转换目录下所有 AVIF 图

Nginx中配置HTTP/2协议的详细指南

《Nginx中配置HTTP/2协议的详细指南》HTTP/2是HTTP协议的下一代版本,旨在提高性能、减少延迟并优化现代网络环境中的通信效率,本文将为大家介绍Nginx配置HTTP/2协议想详细步骤,需... 目录一、HTTP/2 协议概述1.HTTP/22. HTTP/2 的核心特性3. HTTP/2 的优

详解如何通过Python批量转换图片为PDF

《详解如何通过Python批量转换图片为PDF》:本文主要介绍如何基于Python+Tkinter开发的图片批量转PDF工具,可以支持批量添加图片,拖拽等操作,感兴趣的小伙伴可以参考一下... 目录1. 概述2. 功能亮点2.1 主要功能2.2 界面设计3. 使用指南3.1 运行环境3.2 使用步骤4. 核

Java图片压缩三种高效压缩方案详细解析

《Java图片压缩三种高效压缩方案详细解析》图片压缩通常涉及减少图片的尺寸缩放、调整图片的质量(针对JPEG、PNG等)、使用特定的算法来减少图片的数据量等,:本文主要介绍Java图片压缩三种高效... 目录一、基于OpenCV的智能尺寸压缩技术亮点:适用场景:二、JPEG质量参数压缩关键技术:压缩效果对比

Feign Client超时时间设置不生效的解决方法

《FeignClient超时时间设置不生效的解决方法》这篇文章主要为大家详细介绍了FeignClient超时时间设置不生效的原因与解决方法,具有一定的的参考价值,希望对大家有一定的帮助... 在使用Feign Client时,可以通过两种方式来设置超时时间:1.针对整个Feign Client设置超时时间

详解nginx 中location和 proxy_pass的匹配规则

《详解nginx中location和proxy_pass的匹配规则》location是Nginx中用来匹配客户端请求URI的指令,决定如何处理特定路径的请求,它定义了请求的路由规则,后续的配置(如... 目录location 的作用语法示例:location /www.chinasem.cntestproxy