Nginx防盗链和FPM模块优化

配置nginx实现防盗链
在企业网站服务中,一般都要配置防盗链功能,以避免网站内容被非法盗用,造成经济损失
nginx防盗链功能也非常强大。默认情况下,只需要进行简单的配置,即可实现放到链处理
实验环境
一台nginx服务器,一台测试客户机,一台盗链机
实验过程
1.nginx服务器上部署nginx服务
详细部署过程请查看:https://blog.51cto.com/14557905/2460945

nginx部署成功!
2.配置盗链机
创建盗链机的网页

除非用本地的域名去访问
如果匹配的是无效的,否则就跳转一个error.png页面
配置说明

  • valid_referers:设置信任的网站,即能引用相应图片的网站
  • none:浏览器中referer为空的情况,就是直接在浏览器访问图片
  • blocked:referer不为空的情况,但是值被代理或者防火墙删除了,这些值不以http://或者https://开头
  • 后面的网址或者域名referer中包含相关字符串的网址
  • if’语句:如果链接的来源域名不再valid_referers所列出的列表中,$invalid-referer为1,则执行后面的操作,即执行重写或返回403页面
    [[email protected] ~]# cd /usr/local/nginx/
    [[email protected] nginx]# ls
    client_body_temp  fastcgi_temp  logs        sbin       uwsgi_temp
    conf              html          proxy_temp  scgi_temp
    [[email protected] nginx]# cd html/
    [[email protected] html]# ls
    50x.html  index.html  qq.jpg
    [[email protected] html]# mount.cifs //192.168.254.10/linuxs /abc
    Password for [email protected]//192.168.254.10/linuxs:
    [[email protected] html]# cd /abc
    [[email protected] abc]# ls
    error.png
    [[email protected] abc]# cp error.png /usr/local/nginx/html/
    [[email protected] abc]# cd -
    /usr/local/nginx/html
    [[email protected] html]# ls
    50x.html  error.png  index.html  qq.jpg
    [[email protected] html]# grep "qq.jpg" index.html
    <img src="qq.jpg">
    [[email protected] html]# service nginx start
    [[email protected] html]# netstat -natp | grep 80
    tcp        0      0 192.168.247.193:80      0.0.0.0:*               LISTEN      3038/nginx: master  


    使用域名,需要使用dns解析服务
    搭建dns详见我前面的博客
    然后指定盗链主机和客户机的dns服务器
    开始设置盗机
    在win10内打开控制面板,控制面板内打开程序和功能,里面有开启或者关闭功能,点击
    然后点击internet informatoion servers

    关闭盗机防火墙
    然后客户端去访问盗机网站


    盗链成功,接下来做防盗链操作:

    [[email protected] html]# vim /usr/local/nginx/conf/nginx.conf
    location ~*\.(jpg|gif|swf)$ {
       valid_referers none blocked *.shl.com shl.com;
        if ( $invalid_referer ) {
             rewrite ^/ http://www.shl.com/error.png;
       }
    }

    重启nginx服务

    [[email protected] named]# service nginx stop
    [[email protected] named]# service nginx start


    防盗链配置成功
    FPM优化参数调整示例

  • 优化原因:服务器为云服务器,运行了个人论坛,内存为1.5G,fpm进程数为20,内存消耗近1G,处理比较慢
  • 优化参数调整
    FPM启动时有5个进程,最小空闲2个进程,最大空闲8个进程,最多可以有20个进程的存在
    [[email protected] ~]# vim /usr/local/php/etc/php-fpm.conf
    pid = run/php-fpm.pid
    pm = dynamic
    pm.max_children=20
    pm.static_servers = 5
    pm.min_spare_servers = 2
    pm.max_spare_servers = 8

原文地址:https://blog.51cto.com/14557905/2463657

时间: 2024-08-29 16:32:40

Nginx防盗链和FPM模块优化的相关文章

nginx防盗链和内核参数优化

防盗链:防止别人直接从你网站引用图片等链接,消耗了你的资源和网络流量.有几种解决方法:1,水印,品牌宣传,带宽,服务器足够.2,防火墙,直接控制,前提是知道ip来源.3,防盗链策略下面的方法直接给与404错误提示 location ~* ^.+\.(jpg | gif | png | swf | flv | wma | wmv | asf | mp3 | mmf | zip | rar)$ { if ($invalid_referer) { #retrun 302 http://www.tanh

Nginx防盗链 Nginx访问控制 Nginx解析php相关配置 Nginx代理

12.13 Nginx防盗链cd /usr/local/nginx/conf/vhostvi test.com.conf将以上内容复制到下图位置测试,成功前提data/wwwroot/test.com目录下要有1.gif12.14 Nginx访问控制cd /usr/local/nginx/conf/vhostvi test.com.confFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=" alt="Nginx

2018-3-1512周4次课 Nginx防盗链、访问控制、配置PHP解析、代理

12.13 Nginx防盗链 [[email protected] test.com]# vim /usr/local/nginx/conf/vhost/test.com.conf ~* 表示不区分大小写 白名单 *.test.com,如果不是白名单,则返回403 [[email protected] test.com]# curl -e "http://www.baidu.com"-x127.0.0.1:80 test.com/1.gif -I HTTP/1.1 403 Forbid

nginx防盗链和代理配置

nginx防盗链 防盗链的意义在于防止网站中的文件链接在其他网站中被使用,盗链的文件或图片在其他网站中加载,在这个过程中,实质上加载的请求是被盗链服务器上响应的,这就造成了一些不正常流量(并非自己网站的正常打开页面加载的处理请求)造成了消耗不必要的带宽要实现防盗链,需要了解HTTP协议中的请求头部的Referer头域和采用URL的格式表示访问当前网页或者文件的源地址.通过该头域的值,我们可以检测到访问目标资源的源地址.这样,如果我们检测到Referer(rui'fe~)头域中的值并不是自己站点内

Nginx防盗链配置实例——从盗链模拟到防盗链设置流程细解

Nginx防盗链设置 ? 对于图片来说,A网站,如果想使用B网站的图片,可以直接写上B网站图片的链接地址,或者将B网站的图片通过右键另存为的方式下载到本地,然后在页面上使用.如果B网站不想A网站这么干了,那么B网站可以采取防盗链的措施来干这个工作,结果就是,A网站想请求所需要的资源,通过url的方式,获取的可能不是原来的图片了,出现404或者别的图片替代了.如果通过浏览器直接打开图片url,那么仍然有可能显示404,这就是防盗链. ? 下面我们先进行盗链的操作过程:就是如何做盗链网站--盗取别人

Apache和Nginx防盗链的几种配置方法

要实现防盗链,我们就必须先理解盗链的实现原理,提到防盗链的实现原理就不得不从HTTP协议说起,在HTTP协议中,有一个表头字段叫 referer,采用URL的格式来表示从哪儿链接到当前的网页或文件.换句话说,通过referer,网站可以检测目标网页访问的来源网页,如果是资源 文件,则可以跟踪到显示它的网页地址.有了referer跟踪来源就好办了,这时就可以通过技术手段来进行处理,一旦检测到来源不是本站即进行阻止或者返 回指定的页面. Nginx防盗链的配置 1.nginx针对文件类型的防盗链配置

Nginx防盗链、Nginx访问控制、Nginx解析php相关配置、Nginx代理

Nginx防盗链 1.[[email protected] test.com]# vi /usr/local/nginx/conf/vhost/test.com.conf #+表示1或者多个,+前面的字符 location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ { expires 7d; valid_referers none blocked server_names  *.test.com ; #定

LNMP(nginx防盗链,访问控制,解析php相关配置,Nginx代理,常见502问题)

一.nginx防盗链 nginx防盗链: [[email protected] ~]# vim /usr/local/nginx/conf/vhost/test.com.conf   添加以下内容 location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip|doc|pdf|gz|bz2|jpeg|bmp|xls)$ { expires 7d; valid_referers none blocked server_names  *.test.com ;      

12.13 Nginx防盗链;12.14 Nginx访问控制;12.15 Nginx解析php相关配

扩展: 502问题汇总  : http://ask.apelearn.com/question/9109 location优先级 : http://blog.lishiming.net/?p=100 12.13 Nginx防盗链 设定目录访问受限: 1. 配置test.com网站目录的防盗链,编辑虚拟主机配置文件 : [[email protected] ~]# vim /usr/local/nginx/conf/vhost/test.com.conf 插入黄框内容(注释掉红框行): locat