我在my.application.com下运行了一个应用程序,可以在my.application.com:8080下访问。现在我希望wildfly在访问my.application.com时将用户重定向到my.application.com:8080,但不知道如何。
我知道这可能是一个完全没有问题的问题,但我已经阅读了一些关于https-listener和socket-binding的例子。但我似乎无法弄明白。任何人都可以给我一些帮助吗?也许一些见解究竟是如何起作用的?
非常感谢!
答案 0 :(得分:1)
If you want my.application.com you have to set Wildfly to respond on port 80.
A common alternative is to have Apache respond on port 80 and forward the request to Wildfly. Your apache configuration would have a setting like this:
ProxyPass / http://127.0.0.1:8080/
答案 1 :(得分:0)
Wildfly由JBoss提供服务。这意味着您可以在端口80(http)或443(https)上运行JBoss时遵循this excellent write up上的说明。如果您不打算设置代理,请使用TCP端口转发。为此,请查找$JBOSS_HOME/server/$CONFIG/deploy/jboss-web.deployer/server.xml
并编辑Connector
条目,如下所示。
<Connector port="8081" ...
proxyName="www.mycompany.com"
proxyPort="80"/>
这将允许JBoss在更高端口上运行,但会将流量从端口80转发到运行JBoss的任何端口。如果这个应用程序将与另一个JBoss或Tomcat实例并列,我强烈建议学习如何配置代理服务器,如Apache或NGINX来引导端口流量。
以前的答案
如果您希望转发所有端口,可以为my.application.com:8080添加CNAME entry。
配置看起来像
(Sub)domain |Type |Target
my.application.com |A |(your ip or hostname)11.22.33.444
my.application.com:8080 |CNAME |my.application.com
相关链接
接口和端口上的答案 2 :(得分:0)
有几种方法可以做到这一点。
如果您在服务器上具有root访问权限,则可以添加从端口80重定向到端口8080的防火墙规则。如下所示:
iptables -t nat -I PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port 8080
或者,您可以在端口80上设置一个小型服务器,它只向任何连接的客户端发送“302重定向”。你可以使用像netcat这样简单的东西:
echo "HTTP/1.1 302 Found
Cache-Control: private
Location: http://localhost:8080
Date: Fri, 21 Aug 2015 17:44:30 GMT
Server: GFE/2.0
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
" | nc -l 80
任何在端口80上请求HTTP页面的客户端都将被重定向到端口8080。
可能还有其他方法,具体取决于您使用的服务器软件以及您拥有的访问级别。