有时候需要nginx在访问资源之前经过用户验证。
nginx提供了一种基于文件的访问,还有一种是基于服务端的。配置如下。
location / {
auth_request /auth;
root C:/Users/Admin/Documents/NetBeansProjects/SpringBootSample/src/main/resources/public/;
index index.html;
try_files $uri $uri/ =404;
}
location = /auth {
internal;
proxy_pass http://localhost:8084/auth/login;
}
说明,在访问根部/将会先通过/auth配置的http://localhost:8084/auth/login服务端,如果改服务回复200,那么就以为用户验证通过,如果回复401那么就会拒绝访问,nginx将会返回错误给访问者。