我写了一个简单的文件浏览器应用程序,使用端口3000上的节点服务。我使用nginx作为代理此服务的前端。 这是在我的家庭服务器上。
当我通过公共IP访问它时,我希望能够要求基本的HTTP身份validation,但是当我在家时不能。 我有这样的configuration:
location /files { satisfy any; allow 10.1.0.0/24; deny all; auth_basic "Authentication Required"; auth_basic_user_file /etc/access_list; proxy_pass http://127.0.0.1:3000/; }
但是,这是行不通的。 当我在同一子网上的家庭networking上时,仍然要求我进行基本的HTTP身份validation。 我曾经认为命令“allow> deny> auth”配对“满足任何”是正确的。 我在这里做错了什么? 这可能吗?
上面的configuration有错字。 连接来自10.1.1.157,但configuration文件只允许来自10.1.0.0/24。
修复很简单:将有问题的行更改为以下行:
allow 10.1.1.0/24;