分类 默认分类 下的文章

场景描述

当我们的环境中只有一个对外的HTTP发布端口,但是内部有很多需要对外发布的WEB服务时,我们可以采用HTTPD PROXY代理方式,当然,也可以代理websocket。

1.jpg

详细配置

先确认httpd服务启用了一下三个模块:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so

我们还需要三个httpd配置文件来支撑转发:

Zeppelin配置文件 /etc/httpd/conf.d/zeppelin.conf

ProxyRequests Off
ProxyPass /zeppelin/ http://localhost:18080/
ProxyPassReverse /zeppelin/ http://localhost:18080/

ProxyPass /ws  ws://localhost:18080/ws
ProxyPassReverse /ws  ws://localhost:18080/ws

<Location "/zeppelin/">
  Order allow,deny
  Allow from all
</Location>

ELK配置文件 /etc/httpd/conf.d/elk.conf

ProxyRequests Off
ProxyPass /elk/ http://localhost:8080
ProxyPassReverse /elk/ http://localhost:8080

<Location "/elk/">
  Order allow,deny
  Allow from all
</Location>
ProxyPass /tomcat/ http://localhost:8888
ProxyPassReverse /elk http://localhost:8888

<Location "/tomcat/">
  Order allow,deny
  Allow from all
</Location>

效果展现

Zeppelin效果

3.jpg

ELK效果

2.jpg
Tomcat效果

4.jpg