ingress rewrite 配置文件的结构 + server_name和location这两条指令的配置来匹配要 虚拟主机

    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/rewrite-target: http://www.oneway.cn
后面没有分号。

  参考:https://blog.csdn.net/qingyafan/article/details/82692509

1. rewrite break - url重写后,直接使用当前资源,不再执行location里余下的语句,完成本次请求,地址栏url不变 

3. rewrite redirect – 返回302临时重定向地址栏显示重定向后的url,爬虫不会更新url(curl返回请求页面) 
4. rewrite permanent – 返回301永久重定向, 地址栏显示重定向后的url,爬虫更新url (浏览器显示成新的URL)

如果location中rewrite后是对静态资源的请求,不需要再进行其他匹配,一般要使用break或不写,直接使用当前location中的数据源,完成本次请求 

 3.Nginx等服务器是如何知道一个请求对应的是哪个域名的呢?

答案在于HTTP协议中的Host请求头,其值为我们要访问的域名。这里需要注意的是,在HTTP/1.0中是不支持Host请求头字段的,所以HTTP/1.0是不支持虚拟主机技术的,而根据rfc2616规范HTTP/1.1协议中客户端发送的请求必须带上Host这个请求头,否则服务器必须返回400 Bad Request响应。

参考:https://segmentfault.com/a/1190000021771733

原文地址:https://www.cnblogs.com/hixiaowei/p/10489730.html