在网址上使用Nginx进行HTTP Basic Auth并不作为目录存在

时间:2015-07-30 21:15:36

标签: nginx server .htpasswd http-basic-authentication

尝试使用Nginx进行密码保护

mysite.com/admin

我在这里使用的是Web框架,而/ admin只是系统中另一个已配置的路由而不是真正的目录

当我使用以下网址配置网站时

location /admin {
    auth_basic "Administrator Login";
    auth_basic_user_file /usr/share/nginx/html/mysite.com/.htpasswd;
}

并生成了htpasswd文件,当我尝试访问/ admin时,我会看到登录提示,并且效果很好。但是现在每当我访问路径时,我都会从Nginx本身获得404 Not Found

我应该采取哪些不同的做法?

谢谢!

1 个答案:

答案 0 :(得分:0)

  

和/ admin只是另一条配置的路由

您可以像这样

在块中放置该路由的配置
location /admin {
    auth_basic "Administrator Login";
    auth_basic_user_file /usr/share/nginx/html/mysite.com/.htpasswd;
    .
    <your route configuration>
    .
}