将Linux Server配置为Web服务器

时间:2016-09-13 16:03:33

标签: linux apache tomcat web webserver

我目前正在开发自己的网络应用程序。我正在托管aws linux服务器。 我的问题是:

我可以将war文件部署到/var/lib/webapps/test.war,并从这场战争中访问每一页,此外,我正在将一条记录绑定到我的IP地址。假设,我将www.test.com绑定到我的ip。这样我就可以通过www.test.com:8080/test/single.html从test.war访问我的网页。

我如何只能通过www.test.com/single.html访问?

还有一件事是,如果我在/var/www/html/t.html下有一个文件t.html。我可以通过www.test.com/t.html访问此文件。

我应该如何部署test.war以访问www.test.com/single.html

如果有任何描述不清楚,请告诉我。我试了好几天。希望有人可以帮忙!

3 个答案:

答案 0 :(得分:1)

您是否需要通过Apache HTTP提供静态内容?

  • :将Apache配置为Tomcat的反向代理。
  • :配置Tomcat以侦听端口80。

修改 因为我意识到你需要进一步解释:

  • Apache HTTP通常侦听端口80.当您输入域或IP时,Web浏览器会尝试自动连接端口80或443。 Apache HTTP通常提供来自/var/www/...
  • 的内容
  • Tomcat是一个应用服务器,在您的案例中侦听端口8080. Tomcat从/var/lib/webapps部署Web应用程序(使用您的配置)。
  • 您无法在Apache的Document根目录中放置Java Web应用程序。 Apache没有想法如何处理这样的内容......
  • 如果您想在端口80上访问您的webapp,您可以重新配置Tomcat以侦听端口80或使用Apache HTTP作为反向代理(https://en.wikipedia.org/wiki/Reverse_proxy)。
  • 阅读文档!

答案 1 :(得分:1)

  1. Change the port of Tomcat from 8080 to 80。目前,您的tomcat服务器侦听端口8080.仅当它侦听端口80时,才会隐藏后缀:8080。一次只能有一个应用程序绑定到某个端口,因此请确保您的Apache HTTP服务器未绑定到80。

  2. 更改Apache HTTP的端口或仅停止此服务。

  3. 备份文件夹webapps/ROOT中的文件,因为以下操作将替换其内容。将test.war重命名为ROOT.wardeploy your application at the root in Tomcat

答案 2 :(得分:0)

将test.war重命名为ROOT.war(大写重要)并将其部署到同一位置。 Tomcat将使用它作为" root" webapp,您不需要在URL中包含一个文件夹。