Apache和GlassFish的配合中出现了错误

现象 – phenomenon

在搭建测试环境时,我设置了Apache上的摘要认证,并配置了反向代理以连接监听在后端端口28080上的GlassFish。但是,当我尝试连接时,出现了错误。(目前不清楚为什么要监听在28080端口上)此外,直接连接localhost:28080没有问题。

curl --anyauth --user xxx:xxxxxx http://localhost

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>503 Service Unavailable</title>
</head><body>
<h1>Service Unavailable</h1>
<p>The server is temporarily unable to service your
request due to maintenance downtime or capacity
problems. Please try again later.</p>
</body></html>

在安装时会创建代理设置,并将以下内容添加到00-proxy.conf文件中。

ProxyPass / http://localhost:28080
ProxyPassRevers http://localhost:28080

应对

由于我不太了解,所以我检查了Selinux的设置,并且试着将其暂时禁用后,确认了连通性。

getenforce 
Enforcing
setenforce 0

由于对Selinux不太了解,我想保持其设置为禁用状态,但尝试使用setenforce 1命令将其设置为启用状态,并添加了允许的端口号,经过测试后发现可以进行通信。

semanage port -a -t http_port_t -p tcp 28080
semanage port -l | grep http_port_t
http_port_t                    tcp      28080, 80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t            tcp      5988