Apache2代理错误无法处理请求GET /

时间:2019-04-24 11:58:54

标签: apache

我在suse机器上运行apache2服务器。同样在此suse机器上运行SAP HANA Aplication。在My HANA服务器上运行Webaplication。因此,当我在Suse提示localhost:51069上打开浏览器时,便可以使用此应用了。因为它在此端口上运行。

此网站应在我的suse系统的端口80上运行,以便可以正常使用浏览器从Internet进行调用。为此,我想使用我的apache服务器转发该端口。这是我的虚拟主机的配置,静态是我的suse服务器的主机名,可以解析为我的本地ip:

<VirtualHost *:80>
 ServerName static
 ServerAdmin me

 ProxyPreserveHost On
 ProxyRequests Off
 ProxyPass / http://static:51069/
 ProxyPassReverse / http://static:51069
</VirtualHost>

打开页面时出现错误

Proxy Error
The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request GET/

Reason: Error reading from remote server
Additionally, a 502 Bad Gateway error was encouterd while trying to 
use an ErrorDocument to ahandle the request

当我查看错误文件时,我看到erorr是最后一个错误:

Error reading from remote server returned by 
/error/HTTP_BAD_GATEWAY.html.var 

很有可能我的服务失败了51069

1 个答案:

答案 0 :(得分:1)

好,现在我明白了您要做什么。实际上,您甚至根本不需要虚拟主机,因为所有指令也可以在标准服务器配置中使用。


但是现在有两个问题。首先是更简单的部分-奇怪的错误页面

Apache尝试提供请求的URL,但是发生502错误。 Apache配置为将所有请求(包括错误)发送到后端(HANA)。后端无法提供502错误页面,因此Apache抛出500错误,您可以在浏览器中看到该错误。

解决方案: ProxyErrorOverride [On / Off]指令允许您选择错误页面的来源。在您的情况下为“开”,以使Apache能够提供错误页面,即使后端无法提供。

ProxyErrorOverride On

现在更棘手的部分:您的hana服务器中的网关错误

有很多可能的原因,这就是为什么它很棘手。可能的原因包括:

  • 后端的答案超时
  • 意外的答案格式
  • 后端崩溃或无法访问(尽管通常会导致503秒),请检查您的SAP Webdispatcher,以防万一
  • HANA服务器线程超时

您绝对应该检查SAP默认跟踪。一旦我可以从您的下一个答复中推断出“真实”,我将相应地更新我的答案。