Nginx防盗链、Nginx访问控制、Nginx解析php相关配置、Nginx代理
2023年11月13日
105
   Nginx防盗链、Nginx访问控制、Nginx解析php相关配置、Nginx代理

目录

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

一、Nginx防盗链

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


image.png
  • 测试


image.png

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

二、Nginx访问控制

  • 针对目录的访问控制


image.png

作用:访问/admin/目录的请求,只允许某几个IP访问

配置httpd的时候,有一个order,来定义先allow还是先deny,在Nginx里并没有,只要匹配到规则就结束了。

  • 测试


image.png
  • 根据正则匹配来限制访问


image.png

作用:把访问的URL中带有upload或者image字符串,并且是PHP的请求拒绝访问。

  • 测试


image.png
  • 针对user_agent访问控制


image.png

~为匹配符号,只要user_agent中含有Spider/3.0或者YoudaoBot或者Tomato字符串的,都会被拒绝,return 403为直接返回403的状态码,return 403和deny all效果一样。

  • 测试


image.png

三、Nginx解析php相关配置


image.png

fastcgi_pass用来指定php-fpm的地址,指定错误地址时可能报502错误
如果php-fpm监听的是一个tcp:port的地址( 比如127.0.0.1:9000),那么也需要在这里改成fastcgi_pass 127.0.0.1:9000

factcgi_param SCRIPT_FILENAME后面跟的路径为该站点的根目录,和server中的root路径保持一致。如果配置不对,访问PHP页面会出现404。

  • 测试


image.png
  • image.png

四、Nginx代理

Nginx的代理功能非常实用,例如一个没有公网IP的服务器想要访问远端web服务器,而它们并不相通,此时可以选择一台代理服务器作为跳板,代理服务器和web服务器相通,从而使服务器可以访问到远端web服务器。


image.png
  • 测试


image.png

image.png