nginx屏蔽指定接口(URL)的操作方式

一、前言

有时候,web平台上线后,需要屏蔽某个服务接口,但又不想重新上线,可以采用nginx屏蔽指定平台接口的办法。

二、具体操作

在nginx的配置文件nginx.conf文件的server节点中,添加一个location,示例如下:

location /your url {
  return 403;
}

这里具体以nginx自带nginx.conf为例,屏蔽根URL路径/:

屏蔽前

location / {
  root  html;
  index index.html index.htm;
}

访问nginx index.html页面结果如下:

屏蔽后

location / {
  return 403;
  root  html;
  index index.html index.htm;
}

访问nginx index.html页面结果如下:

修改完nginx.conf配置文件后,不用重启nginx,执行命令nginx -s reload重新加载配置文件,修改的规则即可生效。

补充知识:nginx屏蔽特定http_referer的请求

在nginx.conf的server配置项中加入

if ($http_referer ~* "www.xxx.com") {
  return 403;
}

以上这篇nginx屏蔽指定接口(URL)的操作方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • nginx rewrite 实现URL跳转的方法

    最近工作中常常要改nginx配置,学习了nginx中rewrite的用法 URL跳转 这里说的URL跳转就是用户在访问一个URL时将其跳转到另一个URL上. 常见的应用场景是让多个域名跳转到同一个URL上,(例如让旧域名跳转到新域名上) 将静态文件请求跳转到cdn上等 根据用户设备跳转到不同站点(pc版,wap版)等. URL跳转可以通过js在页面上设置的window.location实现 也可以通过php设置header来实现 当然也可以用nginx 的 rewrite功能实现 nginx r

  • 在Nginx服务器上屏蔽IP的一些基本配置方法分享

    采集和防止采集是一个经久不息的话题,一方面都想搞别人的东西,另一方面不想自己的东西被别人搞走. 本文介绍如何利用nginx屏蔽ip来实现防止采集,当然也可以通过iptable来实现. 1.查找要屏蔽的ip awk '{print $1}' nginx.access.log |sort |uniq -c|sort -n nginx.access.log 为日志文件, 会到如下结果,前面是ip的访问次数,后面是ip,很明显我们需要把访问次数多的ip并且不是蜘蛛的ip屏蔽掉,本例当中我们屏蔽掉 165

  • nginx屏蔽指定接口(URL)的操作方式

    一.前言 有时候,web平台上线后,需要屏蔽某个服务接口,但又不想重新上线,可以采用nginx屏蔽指定平台接口的办法. 二.具体操作 在nginx的配置文件nginx.conf文件的server节点中,添加一个location,示例如下: location /your url { return 403; } 这里具体以nginx自带nginx.conf为例,屏蔽根URL路径/: 屏蔽前 location / { root html; index index.html index.htm; } 访

  • Nginx服务器如何设置url链接

    对于LNMP这样架构的网站来说,一般都是基于php框架开发,php框架一般都会讲究优雅链接,比如Laravel,CodeIgniter,ThinkPHP等都是支持这种链接模式的,在服务器配置上也叫作url重写,目前框架大都采用单一入口的index.php然后基于MVC模式的话一般是/index.php/Model/function这种请求方式,所以如果能去掉index.php入口文件整个url就显得简洁美观,和Python.Java等开发的网站url模式统一,Apache和nginx都支持这种u

  • springcloud feign 接口指定接口服务ip方式

    目录 feign接口指定接口服务ip 场景 调用Feign接口时指定ip 只指定服务名 指定ip feign接口指定接口服务ip 场景 现在有2个服务,在eureka注册的服务名称一样,但是对外的接口不一样.其中有一方不允许合并代码,只能把另一个调用指定一下具体的服务地址 @FeignClient(name = "服务名称",url = "${url}",fallback = ServiceHystrix.class) public interface Servic

  • springcloud feign 接口指定接口服务ip方式

    目录 feign接口指定接口服务ip 场景 调用feign接口时指定ip 只指定服务名 指定ip feign接口指定接口服务ip 场景 现在有2个服务,在eureka注册的服务名称一样,但是对外的接口不一样.其中有一方不允许合并代码,只能把另一个调用指定一下具体的服务地址 @FeignClient(name = "服务名称",url = "${url}",fallback = ServiceHystrix.class) public interface Servic

  • 分析nginx日志并屏蔽采集者ip(nginx屏蔽ip配置实例)

    采集和防止采集是一个经久不息的话题,一方面都想搞别人的东西,另一方面不想自己的东西被别人搞走. 本文介绍如何利用nginx屏蔽ip来实现防止采集,当然也可以通过iptable来实现. 1.查找要屏蔽的ip 复制代码 代码如下: awk '{print $1}' nginx.access.log |sort |uniq -c|sort -n nginx.access.log 为日志文件, 会到如下结果,前面是ip的访问次数,后面是ip,很明显我们需要把访问次数多的ip并且不是蜘蛛的ip屏蔽掉,本例

  • Ionic2系列之使用DeepLinker实现指定页面URL

    Ionic2使用了近似原生App的页面导航方式,并不支持Angular2的路由.这种方式在开发本地App的时候比较方便,但如果要用来开发纯Web页面就有点问题了,这种情况下Angular2的router可以提供更灵活的配置.比如在首页是一个Tabs页面的情况下,如何控制用户看到的第一项Tab?默认情况下都是会导航到第一个Tab,而且地址栏的URL并不会跟随页面的切换而变化.好在Ionic2提供了一种类似路由的DeepLinker功能,可以实现以上目的. DeepLinker与NavControl

  • PHP通过curl获取接口URL的数据方法

    如下所示: <?php $weather = curl_init(); curl_setopt($weather,CURLOPT_URL,"https://api.pc2801.com/cqssc/".time()); curl_setopt($weather, CURLOPT_SSL_VERIFYPEER, false); //如果接口URL是https的,我们将其设为不验证,如果不是https的接口,这句可以不用加 curl_setopt($weather,CURLOPT_R

  • Nginx禁止指定UA访问的方法

    本文介绍 Nginx 禁止指定 UA 访问的配置. UA,即 Http User Agent,在 Nginx 中使用内置变量 $http_user_agent 表示,该信息作为 request header 的一部分被发往 webserver.因此,对 webserver 来说,有一种禁止访问的方式,就是对 UA 进行判断. 禁止搜索引擎爬虫 因为你懂的原因,并不是太希望 Baidu 这类爬虫来我的网站,所以在 Nginx 中使用 if 对 UA 进行判断: if ($http_user_age

  • 在phpstudy集成环境下的nginx服务器下配置url重写

    直接在对应的vhosts.conf配置文件的location / {}中添加以下内容: location / { index index.html index.htm index.php; #autoindex on; if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; break; } 具体操作过程如下: 1.找到对应的vhosts.conf配置文件 2.选择所需要配置重写url的站点 总结 以上所述是小编给大家

  • nginx配置proxy_pass中url末尾带/与不带/的区别详解

    nginx配置proxy_pass时url末尾带"/"与不带"/"的区别如下: 注意:当location为正则表达式匹配模式时,proxy_pass中的url末尾是不允许有"/"的,因此正则表达式匹配模式不在讨论范围内.  proxy_pass配置中url末尾带/时,nginx转发时,会将原uri去除location匹配表达式后的内容拼接在proxy_pass中url之后. 测试地址:http://192.168.171.129/test/tes

随机推荐