4.41-Nginx静态文件过时.md 什么是静态文件的过时时间 让图片之类的静态文件,缓存在客户端的浏览器中,在没有过时以前,浏览器不须要请求该图片。 就是为了让这些图片有一个时效性。 若是服务器上图片已经作了更新,可是客户端访问到的仍是旧的。 如何配置: vi 虚拟主机配置文件,增长或更改 location ~* .(png|jpeg|gif|js|css|bmp|flv)$ { expires 1d; access_log off; }php
补充: curl -x 用来指定目标服务器的IP和端口,例:curl -x127.0.0.1:80 -I www.aminglinux.cc bc 是一个linux系统下面的计算器,yum install -y bccss
4.42-Nginx防盗链.md 什么叫防盗链? 两个网站 A 和 B, A网站引用了B网站上的图片,这种行为就叫作盗链。 防盗链,就是要防止A引用B的图片。 配置: location ~ .(png|gif|jpeg|bmp|mp3|mp4|flv)$ { valid_referers none blocked server_names *.aming.com; #白名单(none 表示空referes的访问,blocked 表示不以http 开头的连接 也是合法的访问)
if ($invalid_referer) { return 403; } access_log off; expires 1d; }linux
补充: rz 上传文件,yum install lrzsz sz filename 这样去把这个文件推送到windows上windows
测试防盗链: curl -I -e "http://www.aaa.com/1.txt" http://www.aming.com/1.png curl的-e指定自定义的referer浏览器
4.43-47 访问控制.md 限制IP访问: 1)白名单 allow 127.0.0.1; #特色,后面的就不匹配了 deny all; #特色,后面的就不匹配了 2)黑名单 deny 127.0.0.1; deny 1.1.1.1;缓存
限制某个目录 location /admin/ //在admin目录下操做 { allow 127.0.0.1; allow 192.168.112.136; deny all; }服务器
限制某个目录下的某类文件 location ~ .(upload|image)/..php$ { deny all; }curl
限制user-agent if ($http_user_agent ~ 'Spider/3.0|YoudaoBot|Tomato') { return 403; } 日志里面的 user_agent过短 表示不正常ide
限制uri if ($request_uri ~ (abc|123)) { return 403; }测试
if 里面只能 return XXX 不能用 allow 或 deny
成功限制 返回403 ,不成功限制可是文件不存在 返回404 即返回403 表示成功限制 返回404 表示没有限制,可是文件没找到
补充: curl命令用法: curl -v -A 'aaaaaspider/3.0' -e "1111" -x127.0.0.1:80 bbs.aminglinux.cc -I -A 指定user-agent -e 指定referer -x指定访问目标服务器的ip和port -I只显示 header信息,不显示具体的网页内容 -v 显示详细的通讯过程