nginx盗链与防盗链,nginx的平滑升级

2023-11-07 18:10

本文主要是介绍nginx盗链与防盗链,nginx的平滑升级,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

盗链

实现目标:server2盗链server1www.westos.org下的图片资源

server1上:
注释掉之前的所有重定向模块

[root@server1 ~]# cd /usr/local/lnmp/nginx/conf/
[root@server1 conf]# vi nginx.conf
server {listen 80;server_name www.westos.org bbs.westos.org;#rewrite ^/(.*)$ https://www.westos.org/$1 permanent;#rewrite ^/bbs$ http://bbs.westos.org permanent;#rewrite ^/bbs/(.*)$ http://bbs.westos.org/$1 permanent;#if ($host = "bbs.westos.org") {   #$host : 请求主机头字段,否则为服务器名称#       rewrite ^/(.*)$ http://www.westos.org/bbs/$1 permanent;#}location / {root    /web;index   index.html;}
}[root@server1 conf]# cd /web
[root@server1 web]# ls
index.html  vim.jpg ##图片
[root@server1 ~]# nginx -s reload

server2上:

[root@server2 ~]# cd /usr/local/nginx/conf/
[root@server2 conf]# vi nginx.conf
server {listen 80;server_name daolian.westos.org;charset utf-8;  #不加这个参数网页上看到的汉字是乱码location / {root    /web;index   index.html;}
}[root@server2 ~]# mkdir /web
[root@server2 ~]# cd /web
[root@server2 ~]# vim /web/index.html<html><body>
<br>盗链图片</br>
<img src="http://www.westos.org/vim.jpg"></body></html>
[root@server2 ~]# nginx -s reload

客户端:
配置域名解析

[kiosk@foundation34 ~]$ vi /etc/hosts
172.25.34.3 daolian.westos.org

测试:
浏览器上访问daolian.westos.org,可以访问的到图片资源
在这里插入图片描述

防盗链

server1:
站点模块中加入


```css
[root@server1 web]# cd /usr/local/lnmp/nginx/conf/
[root@server1 conf]# vi nginx.conf
server {listen 80;server_name www.westos.org bbs.westos.org;#rewrite ^/(.*)$ https://www.westos.org/$1 permanent;#rewrite ^/bbs$ http://bbs.westos.org permanent;#rewrite ^/bbs/(.*)$ http://bbs.westos.org/$1 permanent;#if ($host = "bbs.westos.org") {   #$host : 请求主机头字段,否则为服务器名称#       rewrite ^/(.*)$ http://www.westos.org/bbs/$1 permanent;#}location / {root    /webindex   index.html;}location ~* \.(gif|jpg|png|jpeg)$ {  ##防盗链模块root    /web;valid_referers none blocked www.westos.org;if ($invalid_referer) {return 403;#rewrite ^/(.*)$ http://bbs.westos.org/daolian.jpg; #防盗链优化模块,如果是盗链,则重定向}
}
[root@server1 ~]# nginx -s reload

**测试:**
-
浏览器上访问daolian.westos.org,访问不到资源
![在这里插入图片描述](https://img-blog.csdnimg.cn/20191019224705797.png)
**nginx的平滑升级**
-
这篇文章对于平滑升级讲解十分清楚,建议参考
https://blog.csdn.net/qq_42036824/article/details/87868665注意:
平滑升级再次编译时不用make && make install 直接make 否则所有的配置文件也会重改
之前版本的配置文件中添加的模块,因为版本升级时重新编译过了,这些模块要不删除,要不补全加入该模块所需要的前提条件,例如在配置文件中添加ssl模块,前提需要有加密文件,但是因为重新编译,加密文件不存在,如果要重启新的版本,不更改会启动失败。

这篇关于nginx盗链与防盗链,nginx的平滑升级的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

解决Nginx启动报错Job for nginx.service failed because the control process exited with error code问题

《解决Nginx启动报错Jobfornginx.servicefailedbecausethecontrolprocessexitedwitherrorcode问题》Nginx启... 目录一、报错如下二、解决原因三、解决方式总结一、报错如下Job for nginx.service failed bec

MySQL按时间维度对亿级数据表进行平滑分表

《MySQL按时间维度对亿级数据表进行平滑分表》本文将以一个真实的4亿数据表分表案例为基础,详细介绍如何在不影响线上业务的情况下,完成按时间维度分表的完整过程,感兴趣的小伙伴可以了解一下... 目录引言一、为什么我们需要分表1.1 单表数据量过大的问题1.2 分表方案选型二、分表前的准备工作2.1 数据评估

Nginx添加内置模块过程

《Nginx添加内置模块过程》文章指导如何检查并添加Nginx的with-http_gzip_static模块:确认该模块未默认安装后,需下载同版本源码重新编译,备份替换原有二进制文件,最后重启服务验... 目录1、查看Nginx已编辑的模块2、Nginx官网查看内置模块3、停止Nginx服务4、Nginx

通过配置nginx访问服务器静态资源的过程

《通过配置nginx访问服务器静态资源的过程》文章介绍了图片存储路径设置、Nginx服务器配置及通过http://192.168.206.170:8007/a.png访问图片的方法,涵盖图片管理与服务... 目录1.图片存储路径2.nginx配置3.访问图片方式总结1.图片存储路径2.nginx配置

Nginx禁用TLSv1.0 1.1改为TLSv1.2 1.3的操作方法

《Nginx禁用TLSv1.01.1改为TLSv1.21.3的操作方法》使用MozillaSSL配置工具生成配置,修改nginx.conf的ssl_protocols和ssl_ciphers,通... 目录方法一:方法二:使用 MoziChina编程lla 提供的 在线生成SSL配置工具,根据自己的环境填充对应的

Linux升级或者切换python版本实现方式

《Linux升级或者切换python版本实现方式》本文介绍在Ubuntu/Debian系统升级Python至3.11或更高版本的方法,通过查看版本列表并选择新版本进行全局修改,需注意自动与手动模式的选... 目录升级系统python版本 (适用于全局修改)对于Ubuntu/Debian系统安装后,验证Pyt

nginx配置错误日志的实现步骤

《nginx配置错误日志的实现步骤》配置nginx代理过程中,如果出现错误,需要看日志,可以把nginx日志配置出来,以便快速定位日志问题,下面就来介绍一下nginx配置错误日志的实现步骤,感兴趣的可... 目录前言nginx配置错误日志总结前言在配置nginx代理过程中,如果出现错误,需要看日志,可以把

MySQL 升级到8.4版本的完整流程及操作方法

《MySQL升级到8.4版本的完整流程及操作方法》本文详细说明了MySQL升级至8.4的完整流程,涵盖升级前准备(备份、兼容性检查)、支持路径(原地、逻辑导出、复制)、关键变更(空间索引、保留关键字... 目录一、升级前准备 (3.1 Before You Begin)二、升级路径 (3.2 Upgrade

Nginx进行平滑升级的实战指南(不中断服务版本更新)

《Nginx进行平滑升级的实战指南(不中断服务版本更新)》Nginx的平滑升级(也称为热升级)是一种在不停止服务的情况下更新Nginx版本或添加模块的方法,这种升级方式确保了服务的高可用性,避免了因升... 目录一.下载并编译新版Nginx1.下载解压2.编译二.替换可执行文件,并平滑升级1.替换可执行文件