点赞
评论
收藏
分享
举报
Nginx防盗链
发表于2020-08-29 13:50

浏览 2.9k

配置Nginx防盗链和配置过期时间、不记录日志都用到location,所以可以把两部分写在一起,如下所示:

[root@minglinux-01 ~] vim /usr/local/nginx/conf/vhost/test.com.conf
···
12 location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$
//~* 表示后面的关键词不区分大小写
13 {
14 expires 7d;
15 valid_referers none blocked server_names *.test.com ;
16 if ($invalid_referer) { //$invalid referer表示无效的referer
17 return 403;
18 }
19 access_log off;
20 }
···

测试

[root@minglinux-01 ~] /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@minglinux-01 ~] /usr/local/nginx/sbin/nginx -s reload
[root@minglinux-01 ~] curl -x127.0.0.1:80 -e "http://www.baidu.com" test.com/1.gif -I
HTTP/1.1 403 Forbidden
Server: nginx/1.12.2
Date: Wed, 28 Nov 2018 13:02:18 GMT
Content-Type: text/html
Content-Length: 169
Connection: keep-alive
[root@minglinux-01 ~] curl -x127.0.0.1:80 -e "http://www.test.com" test.com/1.gif -I
HTTP/1.1 200 OK
Server: nginx/1.12.2
Date: Wed, 28 Nov 2018 13:02:25 GMT
Content-Type: image/gif
Content-Length: 2
Last-Modified: Tue, 27 Nov 2018 15:00:53 GMT
Connection: keep-alive
ETag: "5bfd5c25-2"
Expires: Wed, 05 Dec 2018 13:02:25 GMT
Cache-Control: max-age=604800
Accept-Ranges: bytes

防盗链配置成功,而且不仅仅有防盗链的功能,还有过期时间。

已修改于2023-03-08 02:22
创作不易,留下一份鼓励
守望

暂无个人介绍

关注



写下您的评论
发表评论
全部评论(0)

按点赞数排序

按时间排序

关于作者
守望
这家伙很懒还未留下介绍~
89
文章
0
问答
18
粉丝
相关文章
近年来,Kubernetes日益获得业内青睐采用该平台与微服务架构。充分理应用并非易事多的情况下。——当数据在构成应用的微服务之间。在博文Oracing社区创建的开源模块(nginxNGINXOpenSource和NGINXPlus提供种编程语言类使用NGINX和NGINXPlusIngressControllersforKubernetes用例,此处我们讨论跟踪服务器端点既。这两个应用均在NGINXIngress执行负载均衡的Kubernetes集群中运行,并启用了OpenTracingController有关系统任何的信息将span捕获,我们即可穿过的镜像中搭配使用我们的Ingress结的Docker镜像中,并指定所用跟踪器。Controller中,我们为NGINX和NGINXPlus提供了单独的Dockerfile。处理的
点赞 0
浏览 38.4k
云负载均衡是指将客户端请求分发到在云环境中运行的多个应用服务器。与其他形式的负载均衡一样,云负载均衡能够最大限度地提高应用的性能和可靠性;相比本地资源的传统负载均衡,其优势(通常)是成本更低,并可以轻
点赞 1
浏览 4.7k
事件驱动架构非常强大,非常适合用在分布式微服务环境中。事件驱动架构提供了解耦的架构、更容易实现的可伸缩性和更高程度的弹性。 但是,与请求和应答类型的架构相比,正确使用事件驱动架构要困难得多。 在过去的
点赞 0
浏览 3.5k