2015-02-10 130 views
0

我有一个nginx服务器,我有一个域侦听端口80.我也想设置,如果用户输入服务器的IP地址,他们得到这个静态html页面。IP地址服务器块已结束域服务器块

现在我的服务器IP地址块是

listen XXX.XXX.XXX.XXX:80 

是压倒域服务器块我怎样才能解决这个问题?我尝试使用default_server,但我认为把一个if语句将是最好的。任何想法都表示赞赏。

+0

为什么你想把IP地址放在'listen'指令中? http://nginx.org/en/docs/http/request_processing.html#mixed_name_ip_based_servers – 2015-02-10 19:23:57

+0

你应该使用'listen 80; server_name XX.XX.XX.XX;'对于 – 2015-02-10 19:25:29

+0

@AlexeyTen谢谢不知道server_name可能是一个ip地址。这工作!你能否回答它,以便我可以将其标记为答案。 – italiano40 2015-02-10 19:43:55

回答

1

请勿混淆listen指令与server_name

listen是网络级别的指令,它使nginx监听某些端口和接口,而server_name是关于什么Host头将浏览器发送。

所以不是listen 12.34.56.78:80你应该使用

listen 80; 
server_name 12.34.56.78; 

而且这是值得阅读how nginx process request