小编Chr*_*s.B的帖子

AWS 的弹性负载均衡器是单点故障吗?

我正在考虑将我们的应用程序迁移到 Amazon Web Services。计划是让所有 EC2 实例跨两个可用区进行镜像。由于数据传输成本,我们将留在一个 AWS 区域(俄勒冈)。

多个可用区消除了我们的应用程序和数据库服务器的单点故障,但是 ELB 呢?如果我有一个 ELB 在两个 AZ 之间分配流量,ELB 是否也托管在这两个 AZ 上?

亚马逊如何防止 ELB 成为 SPoF?

amazon-web-services amazon-elb

18
推荐指数
2
解决办法
1万
查看次数

Nginx - 允许没有主机标头的请求

当 Nginx 收到缺少 Host 标头的请求时,它会拒绝该请求并返回 400 响应。正如它应该。

有没有办法解决?

有一个硬件需要能够对我的 Nginx Web 服务器进行 REST 调用,但该设备未发送主机标头。我对此无能为力,我无法控制该设备的内部运作。

这将是唯一一个与我的 Web 服务器通信且缺少主机标头的设备,并且它将始终连接到同一位置。服务器使用基于名称的虚拟主机。

我尝试使用headers-more-nginx模块重建我的服务器,因为我相信它可以在处理请求之前向请求添加标头。我将以下行添加到该虚拟主机的 server{} 块中:

more_set_input_headers  "Host: device.myserver.com";
Run Code Online (Sandbox Code Playgroud)

但请求仍然被 400 拒绝。

编辑:

我忘了提及这些设备目前能够向 lighttpd 1.4.28 Web 服务器发出请求。我正在尝试让他们在 Nginx 上工作。我在 lighttpd 配置文件中找不到任何应该允许它工作的特殊内容,似乎 lighttpd 不需要这个标头。

编辑2:

tcpdump 的结果(我删除了不应该放在网上的内容):

POST http://XXX.XXX.XXX.com/index/get-next-command HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Connection: keep-alive
Content-Length: 62

user=XXX&pass=XXX&v=0103HTTP/1.1 200 OK
X-Powered-By: PHP/5.3.10-1ubuntu3.21
Set-Cookie: PHPSESSID=XXX; path=/
Set-Cookie: username=XXX; path=/
Set-Cookie: password=XXX; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: …
Run Code Online (Sandbox Code Playgroud)

http nginx http-headers

6
推荐指数
1
解决办法
8821
查看次数