Authentication 子文件夹上的Nginx基本HTML身份验证

Authentication 子文件夹上的Nginx基本HTML身份验证,authentication,nginx,.htpasswd,Authentication,Nginx,.htpasswd,我需要帮助应用基本HTML身份验证来密码保护我网站上的子文件夹-由Digitalocean托管,使用Nginx提供服务。我遵循了教程- 但我的结果是: 1.整个站点提示输入凭据,而不是指定的子文件夹,以及 2.网站上的所有页面都可以找到css和js文件 以下是我尝试过的: 1) 在子文件夹中生成了.htpasswd文件, 2) 在nginx.conf文件中添加了一个位置块(见下文),并且 3) 重新加载的nginx location / { auth_basic "Restricted"; au

我需要帮助应用基本HTML身份验证来密码保护我网站上的子文件夹-由Digitalocean托管,使用Nginx提供服务。我遵循了教程-

但我的结果是: 1.整个站点提示输入凭据,而不是指定的子文件夹,以及 2.网站上的所有页面都可以找到css和js文件

以下是我尝试过的: 1) 在子文件夹中生成了.htpasswd文件, 2) 在nginx.conf文件中添加了一个位置块(见下文),并且 3) 重新加载的nginx

location / {
auth_basic "Restricted";
auth_basic_user_file /var/www/pepperslice/current/public/ps/jeffaltman/.htpasswd;
}
完整的nginx.config文件如下所示:

upstream unicorn {
  server unix:/tmp/unicorn.pepperslice.sock fail_timeout=0;
}

server {
  listen 80 default;
  root /var/www/pepperslice/current/public;
  try_files $uri/index.html $uri @unicorn;

  location = /images {
    root /var/www/pepperslice/current/public/images;
  }

  location @unicorn {
    proxy_pass http://unicorn;
  }

location / {
auth_basic "Restricted";
auth_basic_user_file /var/www/pepperslice/current/public/ps/jeffaltman/.htpasswd;
}

  error_page 500 502 503 504 /500.html;
}
现在,我添加的位置块被注释掉了

我正在寻求帮助,了解如何: 1.密码保护子文件夹,以及 2.密码使用不同的用户名和密码组合保护其他子文件夹

还有,你知道为什么css和js路径失败了吗?我猜一旦身份验证问题得到解决,css/js路径问题就会消失


谢谢。

经过进一步研究,我找到了解决方案,解决了这个问题。本指南是我找到它的地方-见第3节-

对于子文件夹,它应该以子文件夹路径开头,而不是以“
location/{…}
”(站点的根目录)开头的位置块。例如:

location /ps/jeffaltman {
auth_basic "Restricted";
auth_basic_user_file /var/www/pepperslice/current/public/ps/jeffaltman/.htpasswd;
}
css和js路径问题也消失了

干杯