nginx针对某个url限制ip访问,常用于后台访问限制

nginx针对某个url限制ip访问,常用于后台访问限制

    假如我的站点后台地址为: http://www.abc.net/admin.php 那么我想限制只有个别ip可以访问后台,那么需要在配置文件中增加:location ~ .*admin.* {allow 1.1.1.1;allow 12.12.12.0/24;deny all;location ~ \.php$ {include fastcgi_params;fastcgi_pass  unix:/tmp/php-fcgi.sock;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /data/www$fastcgi_script_name;}}需要注意的是,在这个location下也得加入php解析相关的配置,否则php文件无法解析。

 

 

 

upstream market-api{  server 127.0.0.1:3000;
}server {listen 80;listen 443 ssl;server_name  btc.btc.com;add_header Access-Control-Allow-Origin *;ssl_certificate  /etc/nginx/cert_sql/15.pem;ssl_certificate_key /etc/nginx/cert_sql/15.key;ssl_session_timeout 5m;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on;#root  /var/www/api2;root  /var/www/apis;index index.php index.html index.htm;location / {try_files $uri $uri/ =404;}location /apis/{proxy_pass http://market-api;
         proxy_set_header Host $host;}location /api/ {if ( !-e $request_filename){rewrite ^/(.*)$ /api/web/index.php?s=$1 last;}}location ^~ /res/ {alias /data/api/;}include fastcgi-php.conf;
}

 

 

    location ~ .*index.php* {allow 12.12.12.0/24;deny all;location ~ \.php$ {include fastcgi_params;fastcgi_intercept_errors on;fastcgi_pass unix:/var/run/php/php5.6-fpm.sock;fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;}}

 

Nginx配置location限制IP访问策略

1.配置如下

server {listen       80;server_name  localhost;large_client_header_buffers 4 16k;client_max_body_size 300m;client_body_buffer_size 128k;proxy_connect_timeout 600;proxy_read_timeout 600;proxy_send_timeout 600;proxy_buffer_size 64k;proxy_buffers   4 32k;proxy_busy_buffers_size 64k;proxy_temp_file_write_size 64k;location / {root   html;index  index.html index.htm;}location /project {allow    220.178.25.22;allow    172.2.2.0/24;allow    192.2.2.0/24;deny    all;proxy_pass http://172.2.2.20:8080/project/;
            proxy_set_header   Host    $host:$server_port;proxy_set_header   X-Real-IP   $remote_addr; proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;client_max_body_size    10m;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}

 

 

 

2.配置说明

 

以上配置的作用是允许IP为220.178.25.22,以及172和192网段的机器可以访问这个location地址,其他IP的客户端访问均是403。

其中,24是指子网掩码为255.255.255.0。

3.对照表(子网掩码/CIDR值)

255.0.0.0/8
255.128.0./9
255.192.0./10
255.224.0./11
255.240.0./12
255.248.0./13
255.252.0./14
255.254.0./15
255.255.0./16
255.255.128/17
255.255.192/18
255.255.224/19
255.255.240/20
255.255.248/21
255.255.252/22
255.255.254/23
255.255.255/24
255.255.255.128/25
255.255.255.192/26
255.255.255.224/27
255.255.255.240/28
255.255.255.248/29
255.255.255.252/30

 

转载于:https://www.cnblogs.com/flying1819/articles/9162332.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/251609.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript --- 跨浏览器的事件对象

var EventUtil{addHandler: function(element, type, handler){ // 添加事件方法if (element.addEventListener){element.addEventListener(type, handler, false); // 添加监听事件,第3个参数false代表:冒泡阶段} else if (element.attachEvent) {element.attachEvent("…

第一个C#程序

第一个C#程序 新建项目-选择模板--控制台应用程序 还不会用学习版执行程序,没找到执行(不调试)菜单,调试出一堆线程状况.用了VS旗舰版完成, 看见C#在VS中的编译和执行时分开的,eclipse确实叫预编译软件,代码写好没错可以直接运行,编译由eclipse完成, 提问:为啥VS不这样设置?是…

XML序列化与反序列化

C#对于XML的序列化与反序列化提供了很好的支持,我们只需要引用System.Xml的命名空间即可,无需使用第三方库,下面简单实现了一个XML的序列化与反序列化的帮助类。 1.序列化: 先声明一个变量var settings new XmlWriterSettings&am…

CODE[VS] 3411 洪水

题目描述 Description小浣熊松松和朋友到野外露营,没想到遇上了π年一次的大洪水,好在松松是一只爱观察的小浣熊,他发现露营地的地形和洪水有如下性质: ①露营地可以被看做是一个N*M的矩形方阵,其中左上角坐标为…

JavaScript --- 取得鼠标事件的坐标

说明: clientX和clientY属性:事件发生时,鼠标指针在视口中的水平和垂直坐标。pageX和pageY属性:鼠标光标在页面中的位置。screenX和screenY属性:鼠标事件发生时,鼠标指针相对于整个屏幕的坐标信息。IE8及更早的版本不支持事件对象…

JavaScript语义基础

变量(Variables) Variables是你存储数据的容器。声明一个变量需要使用关键字var,然后输入变量的名称。 1 var myvar; 定义一个变量后,可以赋予变量一个值: 1 myvar "mxp"; 可以将上述操作写在一行&#x…

spring面试专题一点通,再也不用担心面试不会回答了

前言文章内容有点小长,希望你能耐心阅读,更多Java面试题以及学习资料获取方式:加Qun:1017-599-436免费获取。还有更多包括电子书,PDF文档以及视频精讲可以分享给大家,内容覆盖很广,分布式缓存、RPC 调用、Z…

bzoj4033 [HAOI2015]树上染色

题目:https://www.lydsy.com/JudgeOnline/problem.php?id4033 重要的思路:与其考虑每一个点对的贡献,不如考虑每条边的贡献(被经过了几次)! 树形dp。 总共的黑点和白点的个数都是已知的,所以知…

JavaScript --- 表单focus,blur,change事件的实现

假设有一个文本框,我们只允许用户输入数值。为此,我们希望: 1.利用focus事件修改文本框内容, 2.利用blur事件回复文本框的内容, 3.利用change事件在用户输入了非数值字符时再次修改背景颜色。 var EventUtil {addHandler: function(element…

mysql日期格式转化

select DATE_FORMAT( 20170701, %Y-%m-%d);先挖坑转载于:https://www.cnblogs.com/tuhooo/p/7766221.html

Solr管理页面 上

DashBoard(仪表盘)Logging(日志)Core Admin(Core管理)在Solr中,每一个Core,代表一个索引库,里面包含索引数据及其配置信息。Solr中可以拥有多个Core,也就同时…

GRPC协议的相关原理

GRPC的Client与Server,均通过Netty Channel作为数据通信,序列化、反序列化则使用Protobuf,每个请求都将被封装成HTTP2的Stream,在整个生命周期中,客户端Channel应该保持长连接,而不是每次调用重新创建Chann…

Echarts --- 各个省份的坐标

纯手打…效果如下 1.新疆: [86.61 , 40.79] 2.西藏:[89.13 , 30.66] 3.黑龙江:[128.34 , 47.05] 4.吉林:[126.32 , 43.38] 5.辽宁:[123.42 , 41.29] 6.内蒙古:[112.17 , 42.81] 7.北京:[116.40 , 40.40 ] 8.宁夏:[106.27 , 36.76] 9.山西:[111.95,37.65] 10.河北:[115.21 , 38.…

xxx征集系统项目目标文档

问题 每四人一组,讨论结束后,每人根据课堂讨论结果提交一份系统利益相关者案例。撰写撰写项目目标文档(目标,好处,度量标准。) 项目目标文档 目标: (1)需求填报 &#xf…

高并发大流量专题---10、MySQL数据库层的优化

高并发大流量专题---10、MySQL数据库层的优化 一、总结 一句话总结: mysql先考虑做分布式缓存,过了缓存后就做mysql数据库层面的优化 1、mysql数据库层的优化的前面一层是什么? 数据库缓存:突破了数据库缓存就需要做mysql数据库层…

【彩彩只能变身队】后端工作总结

2018.06.09 早上8点到晚上10点 冲刺前后端交互(vueexpressmysql) 8&#xff1a;00-12&#xff1a;00 &#xff1a; 前端把请求写好&#xff1a; <template> <div class"LoginForm"> <el-form ref"form" label-width"80px"…

web安全

web安全 DOS命令 web攻防必备课笔记 慕课xss学习 阮一峰&#xff1a;MVC、MVP和MVVM的图示转载于:https://www.cnblogs.com/hanxuming/p/7774092.html

JavaScript --- 渲染数据量大的数组

很多时候&#xff0c;需要在页面上展示从后台来的大量数据,如果一次性渲染&#xff0c;会影响用户的体验。(而且浏览器中的JS严格限制了资源) /* *使用分组的思想来渲染大量的数组 *parmas array 要处理的数组 *params process 对数组中每一个item进行的操作 *parmas context …

Jquery操作select小结

每次操作select都要查资料&#xff0c;干脆总结一下。 为select设置placeholder <select class"form-control selOP" placeholder"Pick Orchestration Plan"><option value"" disabled selected styledisplay:none;>Pick Orchestrat…

第六讲:PrintClient工具的使用

一些简单命令&#xff1a; cp -rf 源目录 目的目录 chmod -R 777 文件名 motelist 查看节点路径 make telosb 编译代码 make telosb reinstall 下载但不编译 make telosb install 编译并且下载 make telosb install, 2 bsl,/dev/ttyUSB0 下载指定路径 java net.tinyos.tools.Li…