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

简介:
+关注继续查看

Nginx防盗链




1、[root@centos7 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 ;

    #定义referer白名单

    if ($invalid_referer) {

        return 403;

    #if函数的意思是:如果不是白名单内的域名,返回值:403

    }

    access_log off;

}



验证:

curl -e:指定referer链接


[root@centos7 test.com]# curl -e "http://123123asdsd.test.com/asdas" -x127.0.0.1:80 -I test.com/baidu.png

HTTP/1.1 200 OK

Server: nginx/1.12.1


使用非白名单内的referer进行访问,被拒绝。


Nginx访问控制

需求:访问admin目录,只能允许几个指定IP可以访问,其他禁止

1、[root@centos7 test.com]# vim /usr/local/nginx/conf/vhost/test.com.conf 


server

{

    listen 80;

    server_name test.com  test2.com test3.com;

    index index.html index.htm index.php;

    access_log /tmp/test.com.log combined_realip;

    root /data/wwwroot/test.com;

    location /admin/

    {

    allow 192.168.3.74;

    allow 127.0.0.1;

    deny all;

    #从上至下的执行权限

    }

验证:

[root@centos7 test.com]# curl -x127.0.0.1:80  test.com/admin/admin.html

“admin root”

[root@centos7 test.com]# curl -x192.168.3.74:80  test.com/admin/admin.html

“admin root”


Nginx访问控制

可以匹配正则

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

{

        deny all;

}

根据user_agent限制

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

{

      return 403;

}

 deny all和return 403效果一样


Nginx解析php相关配置


location ~ \.php$

        #匹配以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;

            #这里的路径要和root路径一致

        }



Nginx代理

工作模式:比如当用户访问真实主机192.168.1.100:8080时,不直接访问,通过nginx代理http://test.com访问,然后nginx跳转到真实主机上去,实现了nginx代理访问


1、

[root@centos7 vhost]# vi /usr/local/nginx/conf/vhost/tomcat.conf


server

{

    listen 80;

    server_name www.test-tomcat.com;

    #定义域名

    location /

    {

        proxy_pass      http://192.168.3.83:8080;

        #指定被代理(被访问)的IP(web服务器IP)

        proxy_set_header Host   $host;

        #$host指的是代理服务器的servername(也是被代理IP的域名)

        proxy_set_header X-Real-IP      $remote_addr;

#这个是在web端获取真实的IP,其中这个X-Real-IP是一个自定义的变量名,名字可以随意取

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    }

}


验证是否跳转:

00701815d1a1b63b01532e44179951d3.png-wh_










本文转自 iekegz 51CTO博客,原文链接:http://blog.51cto.com/jacksoner/1981991,如需转载请自行联系原作者
目录
相关文章
|
1月前
|
Unix 应用服务中间件 文件存储
Nginx编译,配置文件的相关解析
Nginx编译,配置文件的相关解析
30 0
|
4月前
|
监控 负载均衡 算法
Nginx底层原理:一文解析Nginx为什么并发数可以达到3w!
Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。本文从底层原理分析 Nginx 为什么这么快!
QGS
|
7月前
|
应用服务中间件 PHP nginx
(openEuler21.03-Centos7-x86)yum安装php+nginx—配置nginx解析php
记(openEuler21.03-Centos7-x86)yum安装php+nginx—配置nginx解析php
QGS
436 0
(openEuler21.03-Centos7-x86)yum安装php+nginx—配置nginx解析php
QGS
|
8月前
|
应用服务中间件 Shell 网络安全
Centos7-x86 yum安装配置nginx解析php—shell脚本
记Centos7-x86 yum安装配置nginx解析php—shell脚本
QGS
128 0
Centos7-x86 yum安装配置nginx解析php—shell脚本
|
负载均衡 前端开发 JavaScript
全面解析|搞懂Nginx这一篇就够了
Nginx是一个http服务器,是一个使用c语言开发的高性能的http服务器及反向代理服务器。Nginx是一款高性能的http服务器/反向代理服务器及电子邮件(IMAP/POP3)代...
223 0
|
应用服务中间件 Shell Linux
nginx 添加多网站配置,正反向代理解析绑定域名
nginx.conf 配置文件修改多网站配置信息
3710 0
|
tengine 应用服务中间件 nginx
重新认识 nginx 配置文件解析规则
重新认识 nginx 配置文件解析规则
2700 0
|
存储 监控 应用服务中间件
日志服务 - 数据加工- Nginx日志解析实践
以nginx日志为例,简单介绍日志服务的数据加工功能
1257 0
|
安全 应用服务中间件 Apache
网站漏洞检测 apache nginx解析绕过上传漏洞
在日常对客户网站进行渗透测试服务的时候,我们SINE安全经常遇到客户网站,app存在文件上传功能,程序员在设计开发代码的过程中都会对上传的文件类型,格式,后缀名做安全效验与过滤判断,SINE安全工程师在对文件上传漏洞进行测试的时候,往往发现的网站漏洞都是由于服务器的环境漏洞导致的,像IIS,apache,nginx环境,都存在着可以导致任意文件上传的漏洞。
6029 0
|
应用服务中间件 Linux nginx
linux系统nginx下反向代理解析二级目录泛目录教程
linux系统nginx下反向代理解析二级目录泛目录教程,常见的nginx代理配置,nginx反向代理配置详解。
4028 0
相关产品
云迁移中心
推荐文章
更多