服务器之家:专注于服务器技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - Nginx - 详解Nginx防盗链和Nginx访问控制与Nginx解析php的配置

详解Nginx防盗链和Nginx访问控制与Nginx解析php的配置

2019-12-03 16:57lqh Nginx

这篇文章主要介绍了详解Nginx防盗链和Nginx访问控制与Nginx解析php的配置的相关资料,这里提供实例帮助大家,学习理解这部分内容,需要的朋友可以参考下

详解Nginx防盗链和Nginx访问控制与Nginx解析php的配置

Nginx防盗链

配置如下,可以和上面的配置结合起来

?
1
2
3
4
5
6
7
8
9
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) {
    return 403;
  }
  access_log off;
}

Nginx访问控制

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

配置如下:

?
1
2
3
4
5
6
location /admin/
{
  allow 192.168.133.1;
  allow 127.0.0.1;
  deny all;
}

创建测试

?
1
2
mkdir /data/wwwroot/test.com/admin/
echo test,test”>/data/wwwroot/test.com/admin/1.html

检测重启

?
1
/usr/local/nginx/bin/nginx -t && -s reload

测试

?
1
2
curl -x127.0.0.1:80 test.com/admin/1.html -I
curl -x192.168.133.130:80 test.com/admin/1.html -I

Nginx访问控制

配置如下:

?
1
2
3
4
  location ~ .*(abc|image)/.*\.php$
{
    deny all;
}

根据user_agent限制

?
1
2
3
4
if ($http_user_agent ~ 'Spider/3.0|YoudaoBot|Tomato')
{
   return 403;
}

deny all和return 403效果一样

Nginx解析php的配置

配置如下:

?
1
2
3
4
5
6
7
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

以上就是Nginx防盗链和Nginx访问控制与Nginx解析php的配置的讲解,如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:https://my.oschina.net/jiangshanlinux/blog/1510278

延伸 · 阅读

精彩推荐