如何通过Nginx Auth允许来自localhost的调用?

时间:2011-08-22 10:08:54

标签: nginx

我使用以下代码:

location / {  
  satisfy any;  
  allow 127.0.0.1;  
  deny all;  
  auth_basic "closed site";  
  auth_basic_user_file conf/htpasswd;  
}

但当我curl -I "http://mysite.com"时,它会返回401 :(
我如何允许localhost?

编辑:
我使用它的机器是亚马逊ec2实例。

好的,

我没有意识到,当您调用mysite.com时,amazon ec2实例将调用其外部/公共IP。

多么愚蠢。

所以我接受@Capilé对他提到的主机文件解决方法的回答。

1 个答案:

答案 0 :(得分:5)

这是正确的,但可能mysite.com没有到达服务器的127.0.0.1接口。如果你尝试curl -I "http://127.0.0.1"(或任何localhost别名),你应该得到它。

或者,您可以通过/ etc / hosts(Windows上的c:\ windows \ system32 \ drivers \ etc \ hosts)将mysite.com添加到127.0.0.1:

127.0.0.1  mysite.com

干杯,