Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在apache服务器中托管spring应用程序?_Apache_Jsp_Spring Mvc_Xubuntu - Fatal编程技术网

如何在apache服务器中托管spring应用程序?

如何在apache服务器中托管spring应用程序?,apache,jsp,spring-mvc,xubuntu,Apache,Jsp,Spring Mvc,Xubuntu,我知道这很长,但请容忍我 我用的是徐邦图。我有一个名为健身跟踪器的spring mvc项目。它有一个标准的目录结构。我的机器上也有apache2,我是使用命令行安装的。我在sites available目录中创建了一个名为default1的文件,其中包含以下代码: <VirtualHost *:80> ServerName east.example.org DocumentRoot /var/www/hello/FitnessTracker/src/main/webapp/WEB

我知道这很长,但请容忍我

我用的是徐邦图。我有一个名为健身跟踪器的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>
此外,我的spring控制器名为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页面???

我使用了tomcat for java应用程序。将spring mvc与apache结合使用有点复杂

您可以将Tomcat配置为运行Spring应用程序(通过配置web.xml),然后将Tomcat配置为使用mod jk连接Apache。您必须设置apache配置文件以了解mod jk,并配置mod-jk.conf(请参阅:)

希望这有帮助
  • Apache是一个web服务器

  • Tomcat是一个应用服务器(Servlet容器)

  • Apache不能承载Servlet,它只能通过像Tomcat、Jboss等Servlet容器来完成

    参考

    @Santino'sony'Corleone我不知道…….这是我的客户要求我想我的问题不清楚……让我补充一些细节。我已经在eclipse中构建了我的spring mvc项目,并在那里安装了tomcat服务器。如果我通过tomcat,一切都很好…就会出现greeting.html页面。但我想要的是,在不运行tomcat服务器的情况下,通过在地址栏中键入相关url来浏览greeting.html。为此,我安装了apache。你明白了吗?但是你不能直接使用apache,你需要使用tomcat和den使用连接器连接apache服务器…检查我的答案…apache通常用于php而不是java应用程序让我明白…你是说我不能直接使用apache。。。。。。。。我必须让我的tomcat在外部运行(而不是在eclipse内部),然后将其连接到apache,然后再连接到主机……我说得对吗?是的,我觉得这样……我没有在apache上尝试java应用程序,所以不能给你太多建议……但是的,我觉得你需要安装tomcat和den apache……否则你可以等待更多建议。。我没有在ubuntu上安装jsp web应用程序,但我只安装了jre和tomcat..数据..我的web应用程序启动了..他是对的。您需要在Tomcat或其他Servlet容器上运行应用程序。您还可以安装Apache,例如,如果您希望在不同的端口上访问应用程序,在更多Tomcat容器之间请求负载平衡,将两个域名指向两个不同的应用程序,等等+他可以始终在Tomcat之前添加一个Apache服务器作为反向代理
    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";
    }
    }