http - Nginx如何使用limit_except + rewrite对HTTP方法进行密码保护
问题描述
我正在尝试在 nginx 中实现某些目标,但我遇到了困难。基本上我想每次我的 api 收到除 POST 和 PUT 之外的任何 HTTP 方法时都要求输入密码,它在某种程度上起作用,因为尝试发送 GET 时出现密码提示,但未执行重写命令并且 nginx 没有通过返回 404 的 API 的正确路由(如果我不尝试使用 limit_except,则可以正常工作)。
如果有人取得了类似的成就,那将对我有很大帮助!
谢谢 !
location /apis/app/{
rewrite /apis/app/(.*) /$1 break;
limit_except POST PUT {
auth_basic "Restricted";
auth_basic_user_file /var/www/html/apps/app/.htpasswd;
}
proxy_pass http://my_adress;
proxy_redirect off;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
add_header tokentooap app;
limit_req zone=one;
}
location /apps/app/{
try_files $uri $uri/ /apps/app/index.html;}
解决方案
推荐阅读
- c++ - 对象范围问题
- python - 在引用原始变量后编辑它
- android - Android Kotlin - 从 url 下载视频到 InputStream / RAM 无需许可和共享
- javascript - 我的创建语音通道命令不起作用,我不明白为什么它无法识别“执行”,我该如何解决?
- r - 使用 dplyr 修改另一个向量中分组变量的最后一个元素的值
- string - 关于向量、字符串和映射的 c++ 任务
- haskell - Haskell 有隐式模式匹配吗?
- wikidata - 有没有办法在不调用 next() 的情况下跳过 Python 中 bz2 文件的前 x 行?
- javascript - 如何从python中的字典数组中获取javascript中的对象数组?
- css - 如何在 Material UI 中垂直对齐一行小部件?