关于nginx的serverName的一些疑问

我们想用nginx来管理静态资源时,将nginx在10.xx.xxx.xx这台机器上启动 (代码部分是部分nginx配置)其中server_name是不是在10.xx.xxx.xx这台机器没有域名的情况下只能是这台机器的地址10.xx.xxx.xx这??如果有域名www.abc.com会解析到这台机器上的时候server_name才可以是www.abc.com

listen       80;
server_name  10.xx.xxx.xx(部署的服务器没有域名时);    
root  /data0/abc;   


listen       80;
server_name  www.abc.com(10.xx.xxx.xx这台机器有域名www.abc.com时);    
root  /data0/abc;   

server_name这里是不可以随意写的?是我理解这样的吗? 大佬给讲解下,谢啦

阅读 4.1k
2 个回答

nginx没有找到serverName时,会匹配最先配置的相同的listen端口。也可以这么做:

{
  listen 80 default;
  server_name _;
  
  ...
}

意味着未匹配到的server_name都会转移到这个server

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏