热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Nginx只允许root和api位置

如何解决《Nginx只允许root和api位置》经验,为你挑选了1个好方法。

我有一台服务器配置为我的服务器的反向代理.我想拒绝所有请求,除了两个位置,一个用于root,另一个用于api root.

所以服务器应该只允许对给定路径的请求

example.com/ (only the root)
example.com/api/ (every url after the api root)

预期的行为是服务器应该拒绝以下所有可能性.

example.com/location
example.com/location/sublocation
example.com/dynamic-location

我目前的nginx配置,

server {

   # server configurations

   location / {

        # reverse proxy configurations

    }

}

如何设置此配置?



1> ffeast..:

这里是:

   location = / {
        # would serve only the root
        # ...
    }

    location /api/ {
        # would serve everything after the /api/
        # ...
    }

您需要一个特殊的"="修饰符才能使根位置按预期工作

来自文档:

使用"="修饰符可以定义URI和位置的精确匹配.如果找到完全匹配,则搜索终止.例如,如果频繁发生"/"请求,则定义"location = /"将加速这些请求的处理,因为搜索在第一次比较之后立即终止.


推荐阅读
author-avatar
123456ws1043
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有