gpt4 book ai didi

Apache 服务器反向代理另一个 Apache 服务器,得到 "AH01102: error reading status line from remote server"

转载 作者:行者123 更新时间:2023-12-04 11:29:02 24 4
gpt4 key购买 nike

我在两台独立的物理机上设置了两台 apache 服务器。我目前的设置是:

                      Apache 1 (Reverse Proxy) <===> Apache 2
两个apache服务器版本都是 Apache/2.4.29 (Ubuntu)运行于 Ubuntu 18.04.4 LTS和他们的 /etc/apache2/apache.conf文件是相同的。
启用 Apache 1 站点的配置:
<VirtualHost *:80>
ServerName subdomain.domain.tld
ServerAlias www.subdomain.domain.tld

ServerAdmin webmaster@domain.tld
DocumentRoot /var/www/html

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

<Proxy *>
Order deny,allow
Allow from all
</Proxy>

ProxyRequests off
ProxyPreserveHost On
ProxyPass /maintenance_page !
ProxyPass / http://[apache2-ip-address]:27300/
ProxyPassReverse / http://[apache2-ip-address]:27300/
</VirtualHost>
启用 Apache 2 站点的配置:
<VirtualHost *:27300>
ServerName subdomain.domain.tld
ServerAlias www.subdomain.domain.tld

ServerAdmin webmaster@domain.tld
DocumentRoot /var/www/html

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

ErrorDocument 400 /notfound.html

ProxyRequests off
ProxyPreserveHost on
</VirtualHost>

如果我直接打 http://[apache2-ip-address]:27300/从 Web 浏览器中,apache 服务器登录页面显示正常。如果我输入 http://subdomain.domain.tld进入浏览器,我收到一个代理错误:
The proxy server received an invalid response from an upstream server.
The proxy server could not handle the request
我在两台 apache 服务器上都记录了跟踪。 Apache 服务器 2 正在接收来自 apache 服务器 1 的代理请求,并向 apache 服务器 1 返回一个 200 状态响应非常好。在 apache 服务器 1 上的流程中断,我看到以下日志:
[Sat Jul 11 20:34:08.671267 2020] [proxy:debug] [pid 32275:tid 140388069250816] proxy_util.c(3075): AH00962: HTTP: connection complete to [apache2-ip-address]:27300 ([apache2-ip-address])
[Sat Jul 11 20:34:08.671333 2020] [core:trace6] [pid 32275:tid 140388069250816] core_filters.c(525): [remote [apache2-ip-address]:27300] core_output_filter: flushing because of FLUSH bucket
[Sat Jul 11 20:34:08.677508 2020] [proxy_http:error] [pid 32275:tid 140388069250816] (104)Connection reset by peer: [client xx.xxx.xxx.xx:39014] AH01102: error reading status line from remote server [apache2-ip-address]:27300
[Sat Jul 11 20:34:08.677575 2020] [proxy_http:debug] [pid 32275:tid 140388069250816] mod_proxy_http.c(1324): [client xx.xxx.xxx.xx:39014] AH01105: NOT Closing connection to client although reading from backend server [apache2-ip-address]:27300 failed.
[Sat Jul 11 20:34:08.677624 2020] [proxy:error] [pid 32275:tid 140388069250816] [client xx.xxx.xxx.xx:39014] AH00898: Error reading from remote server returned by /
[Sat Jul 11 20:34:08.677681 2020] [proxy:debug] [pid 32275:tid 140388069250816] proxy_util.c(2192): AH00943: HTTP: has released connection for ([apache2-ip-address])
[Sat Jul 11 20:34:08.677724 2020] [http:trace3] [pid 32275:tid 140388069250816] http_filters.c(1128): [client xx.xxx.xxx.xx:39014] Response sent with status 502, headers:

从我可以在网上找到的其他一些讨论中,我尝试过的事情是对 apache server 1 sites-enabled 配置的以下更改:
  • SetEnv proxy-initial-not-pooled 1
  • SetEnv force-proxy-request-1.0 1
  • SetEnv proxy-nokeepalive 1
  • ProxyTimeout 600
  • ProxyPass / http://[apache2-ip-address]:27300/ timeout=600
  • ProxyPass / http://[apache2-ip-address]:27300/ nocanon

  • 我已经用上述设置的几种组合来暴力破解这种情况,但似乎没有任何效果。任何帮助表示赞赏。
    我运行的另一个检查是,如果我在与 apache 服务器相同的机器上运行 nodejs 应用程序或 python Flask 服务并使用 ProxyPass / http://localhost:[port]/ 代理该服务,设置工作正常。因此,两个 apache 服务器都运行良好,并且能够在各自的本地主机上代理服务。任何中断都与两个 apache 服务器之间的通信有关。
    更新:使用 curl 进一步分类后对于网络人员,问题似乎是组织防火墙只允许入站流量到 apache 服务器 2 并阻止出站流量,这可能导致 apache 服务器 1 上的 502 错误。直到我意识到这似乎不是问题我的笔记本电脑在测试时一直通过 VPN 连接到组织网络,而 apache 服务器 1 位于组织网络之外。如果事实证明这是问题,那将是一个真正的无赖。

    最佳答案

    在 http.conf 文件中添加以下参数解决了我的“代理:从远程服务器读取状态行时出错”的问题
    SetEnv proxy-initial-not-pooled 1
    我从 apache 网址“https://httpd.apache.org/docs/2.4/mod/mod_proxy_http.html”转到引用
    注意:重新启动 http 服务器并重试。

    关于Apache 服务器反向代理另一个 Apache 服务器,得到 "AH01102: error reading status line from remote server",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62854501/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com