Amazon web services AWS ELB自定义标题Nginx

Amazon web services AWS ELB自定义标题Nginx,amazon-web-services,nginx,amazon-elb,Amazon Web Services,Nginx,Amazon Elb,ELB的一种奇怪行为,其中正在删除自定义HTTP头。我目前正在使用Nginx作为服务器,具有以下虚拟主机配置: server { listen 80; server_name example.com; location / { index index.html index.htm; add_header Custom Test; } } 通过使用IP地址直接访问服务器,可以找到标题“Custom:Test”。但一旦该服务器位于EL

ELB的一种奇怪行为,其中正在删除自定义HTTP头。我目前正在使用Nginx作为服务器,具有以下虚拟主机配置:

server {
    listen 80;
    server_name example.com;
    location / {
        index index.html index.htm;
        add_header Custom Test;
    }
}

通过使用IP地址直接访问服务器,可以找到标题“Custom:Test”。但一旦该服务器位于ELB后面。自定义标题不再显示。我可以知道这是否是我的设置的问题吗?

在回复时,我能够始终让ELB返回我测试的所有回复标题-包括带有_的标题,但无论如何我都会尝试回答这个问题

从文件中:

当您对前端和后端连接使用HTTP(第7层)时,负载平衡器会解析请求中的头并在将请求发送到后端实例之前终止连接。[……]

负载平衡器中并不支持所有HTTP扩展。如果由于意外的方法、响应代码或其他非标准HTTP 1.0/1.1实现,负载平衡器无法终止请求,则可能需要使用TCP侦听器

这可能会导致ELB删除一些标题。没有一个明确的列表说明它可以删除什么或不删除什么,但它暗示了任何非RFC(
非标准HTTP 1.0/1.1实现

如果您需要一个自定义头被持久化,而您一直在观察它失败,那么您可以使用TCP LB来代替。您将丢失X-Forwarded-For(但您可以使用代理协议获取此信息)和会话粘性等内容


对于下划线的情况,这有点(至少对于Nginx或其他web服务器)可能有不同的行为。

我们遇到了相同的问题。似乎没有任何解决方法。同样,这里一些标题被删除,似乎是标准行为…我们也遇到了这个问题。有人找到解决方案了吗?我一直在尝试不同的自定义标题。到目前为止,我的观察结果表明,ELB会删除包含下划线的标题(如
apikey:xxx
),但没有下划线的标题(如
apikey:xxx
apikey:xxx
)不会。