文档章节

nginx防盗链、访问控制、解析php、代理服务

h
 hhpuppy
发布于 2018/11/29 22:10
字数 603
阅读 22
收藏 13

11月28日任务

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

1.Nginx防盗链

示例一:

  • 配置如下,可以和上面的配置结合起来
  • vi /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 ; 定义白名单    

if ($invalid_referer) {         如果不是白名单,返回403

return 403;    

   }    

access_log off;

}

  • 配置完成如图

  • -t && reload 检测语法并重新加载配置文件

  • 用curl 测试一下,-e 指定

 

2.Nginx访问控制

示例一:

  • 需求:访问/admin/目录的请求,只允许某几个IP访问,配置如下:
  • vi /usr/local/nginx/conf/vhost/test.com.conf

location /admin/

{    

allow 192.168.133.1;    

allow 127.0.0.1;    

deny all;

}  

  • mkdir /data/wwwroot/test.com/admin/  
  • echo “test,test”>/data/wwwroot/test.com/admin/1.html  
  • -t && -s reload  检查语法并重新加载配置文件
  • 测试:
  • curl -x127.0.0.1:80 test.com/admin/1.html -I  

  • curl -x192.168.133.130:80 test.com/admin/1.html -I

  • curl -x 192.168.142.128:80 test.com/admin/

 

示例二:禁止解析php

  • 可以匹配正则
  • vi /usr/local/nginx/conf/vhost/test.com.conf

location ~ .*(abc|image)/.*\.php$

{        

deny all;

}

  • -t && reload 检测语法,并重新加载配置文件

  • 用curl测试一下

 

示例三:根据user-agent限制

  • vi /usr/local/nginx/conf/vhost/test.com.conf

if ($http_user_agent ~ 'Spider/3.0|YoudaoBot|Tomato')

{      

return 403;

}  

  • deny all和return 403效果一样
  • -t && reload 检测语法,并重新加载配置文件

  • 用curl 检测一下

  • 如果想忽略大小写,就如下在~ 后添加一个*号就行了

 

 

3.Nginx解析PHP相关配置

示例一:

  • vi /usr/local/nginx/conf/vhost/test.com.conf
  • 配置如下:

location ~ \.php$    

{        

include fastcgi_params;        

fastcgi_pass unix:/tmp/php-fcgi.sock;        

fastcgi_index index.php;        

fastcgi_param SCRIPT_FILENAME

/data/wwwroot/test.com$fastcgi_script_name;    

}

  •  fastcgi_pass 用来指定php-fpm监听的地址或者socket
  •  

4.Nginx代理

示例一:

  • cd /usr/local/nginx/conf/vhost  进入目录下
  • vim proxy.conf //加入如下内容

server

{    

listen 80;    

server_name ask.apelearn.com;     定义一个域名

location /    

{        

proxy_pass      http://121.201.9.155/;         配置真实IP

proxy_set_header Host   $host;       要访问的域名 

proxy_set_header X-Real-IP      $remote_addr;   指定ip的 

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;    

   }

}

  • /use/local/nginx/sbin/nginx -t  检测语法错误
  • /use/local/nginx/sbin/nginx -s reload 重新加载一下配置文件
  • curl 测试一下,访问成功,通过本地地址访问到远程的网址

© 著作权归作者所有

h
粉丝 1
博文 67
码字总数 57158
作品 0
合肥
私信 提问
LNMP架构防盗链、访问控制、解析php、代理的设置

11月28日任务 12.13 Nginx防盗链 12.14 Nginx访问控制 12.15 Nginx解析php相关配置 12.16 Nginx代理 Nginx防盗链 修改虚拟主机配置文件 验证效果 使用不在白名单内的referer访问,返回的状态...

robertt15
2018/11/28
16
0
Nginx配置:防盗链、访问控制、解析PHP以及代理

一、Nginx防盗链 防盗链是指一个网站的资源(图片或附件)未经允许在其它网站提供浏览和下载,尤其热门资源的盗链,对网站带宽的消耗非常大,设置防盗链以节省资源。 1、修改虚拟主机配置文件 ...

BatmanLinux
2018/03/15
0
0
linux复盘:构架搭建lnmp(配置)

nginx虚拟主机 vim /usr/local/nginx/conf/nginx.conf 增加include vhost/*.conf; mkdir /usr/local/nginx/conf/vhost vim /usr/local/nginx/conf/vhost/aaa.com.conf #虚拟主机配置文件 如果......

历经35天的选择
2018/01/23
36
0
nginx防盗链,nginx访问控制,nginx代理

nginx防盗链 编辑test.com.conf文件 -t -s reload重新加载 测试加了防盗链后 1、referer为其他网站时访问返回403 2、referer为自身域名网站时返回200 Nginx访问控制 匹配目录文件 编辑配置文...

非此即彼
2018/03/18
0
0
Nginx防盗链、访问控制、Nginx解析PHP相关配置、Nginx代理

Nginx防盗链 在配置文件里写入以下内容: 用curl测试 访问控制 Nginx限制某些IP不能访问或者只允许某些IP访问。 配置文件写入如下内容: allow 表示允许访问的IP,deny限制访问的IP。 匹配正...

黄昏残影
2018/08/15
10
0

没有更多内容

加载失败,请刷新页面

加载更多

java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
今天
6
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
5
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
15
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
16
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部