我知道这很长,但请耐心等待......
我正在使用 xubuntu。我有一个名为 Fitness Tracker 的 spring mvc 项目。它有一个标准的目录结构。我的机器上也有 apache2,我是使用命令行安装的。我在 sites-available 目录中创建了一个名为 default1 的文件,其中包含以下代码:
<VirtualHost *:80>
ServerName east.example.org
DocumentRoot /var/www/hello/FitnessTracker/src/main/webapp/WEB-INF/jsp
<Directory /var/www/hello/FitnessTracker/src/main/webapp/WEB-INF/jsp>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
</VirtualHost>
我的 httpd.conf 包含以下代码
ServerName localhost
DirectoryIndex hello.jsp
此外,我的 spring Controller 名称是 Hello Controller,它包含以下代码:-
package com.pluralsight.controller;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class HelloController {
@RequestMapping(value="/greeting")
public String sayHello(Model model)
{
model.addAttribute("greeting", "Hello World");
return "hello";
}
}
现在,当我在浏览器的地址栏中键入 east.example.org 时,我会看到包含 hello.jsp 页面代码的 hello.jsp 页面(即 spring mvc 代码和 html 代码)。
我的要求是,当我启动我的 apache 服务器并在浏览器的地址栏中键入 east.example.org 时,我想显示 greeting.html 页面。如何才能做到这一点??请注意,不存在名为 greeting.html 的页面。但是 Spring 使我们能够在请求 greeting.html 页面时将请求路由到 hello.jsp 页面。
附言我在我的 jsp 页面中使用了 spring 标签。我怎样才能访问 greeting.html 页面??
最佳答案
Apache - 是一个网络服务器。
Tomcat - 是一个应用服务器(Servlet 容器)。
Apache 不能托管 servlet,只能通过 Tomcat、Jboss 等 Servlet 容器来完成。
引用 Difference between the Apache HTTP Server and Apache Tomcat?
关于apache - 如何将 spring 应用程序托管在 apache 服务器中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22369285/