为什么perlbal的reproxying给我一个503的任何远程url?
X-REPROXY-URL: /path/to/a/local/file.jpg = working X-REPROXY-URL: http://a-public-file-in-an-s3-bucket.jpg = HTTP 503
我的perlbal conf看起来像:
CREATE POOL test_pool POOL test_pool ADD 127.0.0.1:8888 POOL test_pool ADD 127.0.0.1:8889 CREATE SERVICE balancer SET listen = 0.0.0.0:80 SET role = reverse_proxy SET pool = test_pool SET persist_client = on SET persist_backend = on SET verify_backend = on SET enable_reproxy = true ENABLE balancer
我知道即时设置标题正确,因为,正如我所说,它适用于本地文件和相同的域的url。
Perlbal通过HTTP路由请求,所以您将HTTP请求需要满足Web服务器的规则或ACL。
最容易检查的方法是使用curl来模拟请求:eg:curl -vv http://127.0.0.1:8888/a-public-file-in-an-s3-bucket.jpg
检查你的服务器access_log或error_log。 如果您运行虚拟networking服务器,则可能需要指定FQDN而不是IP地址。