相关疑难解决方法(0)

对于Tomcat 8,Httpd返回503 Service Unavailable with mod_proxy

我正在尝试将Tomcat与Apache集成.我的目标是将所有请求重定向 http://localhost/myapphttp://localhost:8080

我遵循了这个指南:http://tomcat.apache.org/tomcat-8.0-doc/proxy-howto.html

httpd.conf看起来像这样:

Include conf.modules.d/*.conf
LoadModule proxy_module  modules/mod_proxy.so

ProxyPass         /myapp  http://localhost:8080 retry=0 timeout=5
ProxyPassReverse  /myapp  http://localhost:8080
Run Code Online (Sandbox Code Playgroud)

我在apache-tomcat中的server.xml如下所示:

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" proxyPort="80" />
Run Code Online (Sandbox Code Playgroud)

现在,当我尝试网址时http://localhost/myapp,它会503 Service Unavailable出错.

Tomcat和Apache都已启动并运行.URL http://localhost:8080工作正常.

文件权限可能存在问题吗?

对于tomcat用户和组root/root来说httpd,用户和组是apache/apache

我错过了什么或者我做错了吗?

Httpd版本是2.4.6,Tomcat的版本是8.0

httpd错误日志:

[proxy:error] [pid 19905] (13)Permission denied: AH00957: HTTP: attempt to connect to 127.0.0.1:8080 (localhost) failed

[proxy:error] [pid 19905] AH00959: ap_proxy_connect_backend disabling worker for (localhost) for 0s

[proxy_http:error] …
Run Code Online (Sandbox Code Playgroud)

apache tomcat

73
推荐指数
3
解决办法
11万
查看次数

Apache proxypass IP缓存的IP地址

我正在使用Apache Web服务器2.4使用proxypass指令将传入的HTTP请求代理到我们的后端服务器.我也通过Apache传递来自后端服务器的传出请求,再次使用proxypass,例如

<Location/outgoingrequest />

< Location /outgoingrequest/ >
    ProxyPass http://foobar.com/ retry=0 timeout=40 ttl=60
    ProxyPassReverse http://foobar.com/
< /Location >
Run Code Online (Sandbox Code Playgroud)

</ Location>

这通常工作正常,我可以在Apache日志中看到所有传入和传出请求.但是,foobar.com托管在AWS云中,偶尔会更改其IP地址,从而导致所有传出请求失败.DNS查找显示新的IP地址,因此很明显mod-proxy正在缓存IP地址.我已经添加了ttl = 60,但是传出的请求会持续数小时失败.

有什么我想念的,或者我应该以完全不同的方式做这件事吗?

apache ip caching proxypass

5
推荐指数
1
解决办法
2051
查看次数

标签 统计

apache ×2

caching ×1

ip ×1

proxypass ×1

tomcat ×1