如果设置了头,是否有办法回退nginx proxy\u pass

如果设置了头,是否有办法回退nginx proxy\u pass,nginx,amazon-s3,Nginx,Amazon S3,nginx服务器提供服务,并且 nginx向上请求进程到一些ruby代码 server1.com、server2.com和server3.com实际上是存储在AmazonS3上的一些静态文件 我接下来要做的是:找到“server1”主机的bucket名称,放入一些日志,并通知nginx从amazon流式传输。 也许可以通过在ruby代码头中设置AmazonS3 bucket的url,然后由nginx使用此url 流程:浏览器->nginx->ruby->nginx->亚马逊s3->浏览器 我发现

nginx服务器提供服务,并且

nginx向上请求进程到一些ruby代码

server1.com、server2.com和server3.com实际上是存储在AmazonS3上的一些静态文件

我接下来要做的是:找到“server1”主机的bucket名称,放入一些日志,并通知nginx从amazon流式传输。 也许可以通过在ruby代码头中设置AmazonS3 bucket的url,然后由nginx使用此url

流程:浏览器->nginx->ruby->nginx->亚马逊s3->浏览器

我发现如何在出现错误时执行此操作:

http {
  server {
     listen 12345; #Port that my custom app was assigned
     server_name mydomain.com;

     location / {
       proxy_intercept_errors on;
       error_page 400 403 502 503 504 = @fallback;
       proxy_pass http://the_old_site_domain.com;      
     }

     location @fallback {
       proxy_pass http://myfallback.domain.com;
     }
  }
}
但是有没有一种方法可以根据头球的外观做类似的事情呢

谢谢

UPD 以下是我如何测试标题的方法:

if ($http_x_custom_header) {
  ....
}
如果设置了nginx,那么它应该执行一些内部重定向,对吗


但是在ruby代码之后如何调用它呢?

有一个叫做
X-Accel-…
的特殊头文件。
您需要。

谢谢!你能回答一下吗?那么我可以接受吗?:)