首页 > 解决方案 > 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;}

标签: httpvue.jsnginxconfigbuffalo

解决方案


推荐阅读