1

我在 Jboss 前面设置 Apache Web 服务器时遇到了一些问题。

我租了一个 apache 和 jboss 运行的 vps,分别运行良好。

当我想通过http://myVpsUrl.com:8080/myApp/访问我的应用程序时,Jboss 工作正常

我正在尝试将http://myUrl.com重定向到我的 jboss 应用程序。

在 Apache conf 文件中我设置:

<VirtualHost *:80>
    ServerName myUrl.com
    ServerAlias myUrl.com

    ProxyPass / http://localhost:8080/context/
    ProxyPassReverse /  http://localhost:8080/context/

    ProxyPassReverseCookiePath / /
    ProxyRequests On

</VirtualHost>

当我要去 myUrl.com 时,我可以访问网络应用主页,但是

  • 缺少图像和样式
  • 所有链接都将我重定向到主页

我的风格和图像位于

http://myVpsUrl:8080/context/css/icons/devices-14-20.png
http://myVpsUrl:8080/context/javascript/util.js
http://myVpsUrl:8080/context/images/*
etc...

我试图添加

ProxyPreserveHost On

但我收到一个错误:

页面未正确重定向无限重定向

一周以来我一直被这个错误困扰,任何帮助将不胜感激。

谢谢你。

4

2 回答 2

2

我终于找到了如何让它工作。

1-在jboss中创建一个虚拟服务器

jboss-as-7.1.1.Final/standalone/configuration/standalone.xml

<virtual-server name="myVirtualServerName" default-web-module="nameOfWarFile">
   <alias name="myurl.com"/>
</virtual-server>

2- 配置 jboss-web.xml

<jboss-web>
    <virtual-host>myVirtualServerName< /virtual-host> 
</jboss-web>

3-重新启动 Jboss 并部署你的应用程序

=> 您应该可以通过 myurl.com:8080 访问您的应用

4-在apache上进行从端口80到8080的重定向

<VirtualHost *:80>
   ServerName myurl.com
   ServerAlias www.myurl.com myurl.com

   ProxyPass / http://myurl.com:8080/
   ProxyPassReverse /  http://myurl:8080/
</VirtualHost>

5-编辑你的主机文件(/etc/host)并添加这一行

127.0.0.1 myurl.com

6-重启apache,你应该可以通过myurl.com访问你的jboss

于 2013-11-17T22:50:45.360 回答
1

您可以尝试使用重写引擎。

尝试这个:

<VirtualHost *:80>
    ServerName myUrl.com
    ProxyRequests Off
    ProxyPreserveHost On

    ProxyPass /  http://localhost:8080/context/
    ProxyPassReverse /  http://localhost:8080/context/

    RewriteEngine   On
    RewriteCond     %{THE_REQUEST}  /context/
    RewriteRule     ^/context/(.*)$ /$1 [PT]

</VirtualHost>
于 2013-11-06T00:18:38.180 回答