Authentication Nginx身份验证,本地网络上的除外

Authentication Nginx身份验证,本地网络上的除外,authentication,nginx,basic-authentication,Authentication,Nginx,Basic Authentication,来自apache2的一个功能我无法实现;仅对外部访问要求身份验证,但对本地网络上的用户要求自由访问。 有没有办法轻松处理这种情况 任何帮助都将不胜感激。我已经删除了以前的答案,并想建议我在下面提供的解决方案 我做了一些搜索,找到了解决您问题的方法-在代码中,您使用auth_basic指令,进行这样的更改: satisfy any; allow 10.0.0.1/8; // give access for all internal request deny all;

来自apache2的一个功能我无法实现;仅对外部访问要求身份验证,但对本地网络上的用户要求自由访问。 有没有办法轻松处理这种情况

任何帮助都将不胜感激。

我已经删除了以前的答案,并想建议我在下面提供的解决方案

我做了一些搜索,找到了解决您问题的方法-在代码中,您使用
auth_basic
指令,进行这样的更改:

satisfy    any;
allow      10.0.0.1/8;   // give access for all internal request
deny       all;
auth_basic "....";        // your auth_basic code goes here
auth_basic_user_file ...; // your auth_basic_user_file goes here
它是如何工作的<代码>满足指令意味着必须传递来自下一个访问规则的
任何
所有
,以授予对资源的访问权。您可以在此处找到更多详细信息:


这应该非常适合您的问题;)

试图添加一个变量,但nginx似乎不喜欢:nginx-t[emerg]:“auth_basic”指令不允许使用。您是对整个服务器(在
服务器
块中)使用身份验证,还是仅在“location/”中的某些
位置
块中使用身份验证block.so在
location
block中尝试我的新解决方案-它应该可以按照您的需要工作:)您可以更新您的答案,在
allow
行中使用分号,并使用
#
进行注释吗?这将帮助新手!