远程Tomcat .war部署基础URL更改

时间:2014-11-10 20:51:34

标签: java spring tomcat

我正在使用我的 localhost apache-tomcat webserver开发一个应用程序。当我使用intellij构思部署我的应用程序时,我没有遇到网址问题,要访问我使用网址的应用

  

本地主机:8080

但是现在我尝试在Ubuntu 10.04.4 LTS上安装的远程服务器上部署我的应用程序,我遇到了基本URL更改的问题。我创建了一个.war工件,并将其与其他库一起复制到远程tomcat的webapps文件夹中。我的项目名称是 Spider 。在远程服务器上启动tomcat后,我只能使用URL

访问我的应用程序
  

serverIpAddress:8080 /蜘蛛

但是因为我的基本URL中有/ Spider,所有页面上的链接都没有导致适当的控制器,我有404错误。例如,工作链接为:serverIpAddress:8080/googleApi,但链接指向serverIpAddress:8080/Spider/googleApi

我该如何解决这个问题?提前谢谢你,对不起我的英语不好。

1 个答案:

答案 0 :(得分:3)

你的问题是你使用绝对链接,这是非常糟糕的做法。如果您在应用程序之前有一些代理或负载均衡器,它也将无法运行。所以解决方案是在所有视图页面中仅使用相对路径。另一件不好的事情是使用区分大小写的字符,我个人只会使用小的特别是在Linux平台上。如果你真的希望你的应用程序以root身份提供,你可以通过覆盖tomcat weapp中的ROOT目录来部署它,但请注意它会破坏tomcat标准管理GUI