Nginx 限制服务请求类型,做网关拦截

server {
        listen 8080;
        server_name localhost;

        location ^~ /api/(.*)/ {
           if ($request_method !~ ^(GET|POST|HEAD)$) {
                   return 403;
            }
            proxy_redirect off;
            proxy_pass http://server;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_connect_timeout 120s;
            proxy_read_timeout 120s;
            proxy_send_timeout 120s;
            client_max_body_size 50m;            
        }

        location / {
            proxy_redirect off;
            proxy_pass http://server;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_connect_timeout 120s;
            proxy_read_timeout 120s;
            proxy_send_timeout 120s;
            client_max_body_size 50m;
        }
}
最后修改:2022 年 10 月 31 日
如果觉得我的文章对你有用,请随意赞赏