2014-03-13 190 views
1

我知道這很長,但請忍受我......Spring應用程序如何在Apache服務器上託管?

我使用的是xubuntu。我有一個名爲Fitness Tracker的彈簧mvc項目。它有一個標準的目錄結構。我也有我的機器上使用命令行安裝的apache2。我創建了一個名爲缺省1內部網站,提供目錄文件,其中包含下面的代碼:

<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 

Additioanlly,我的春天控制器名稱爲你好控制器和它包含下面的代碼: -

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頁面的代碼(即mspc代碼和html代碼)。

我的要求是,當我開始我的Apache服務器,並在瀏覽器的地址欄中鍵入east.example.org我想顯示greeting.html頁。如何才能做到這一點??請注意,不存在名稱greeting.html的頁面。但是,當請求greeting.html頁面時,Spring使我們能夠將請求路由到hello.jsp頁面。

P.S.我在我的jsp頁面中使用了spring標籤。如何訪問greeting.html頁面?

+0

爲什麼不tomcat的? –

+0

@ Santino'Sonny'Corleone我不知道........這是我的客戶要求 –

回答

4
  • 阿帕奇 - 是一個Web服務器。

  • Tomcat - 是一個應用程序服務器(Servlet容器)。

阿帕奇不能承載的servlet,它只能與Servlet容器(如Tomcat)來完成時,JBoss等

參考 Difference between the Apache HTTP Server and Apache Tomcat?

+0

+他總是可以在tomcat之前添加一個apache服務器作爲反向代理 – tom

1

我已經使用tomcat的Java應用程序。它是一種複雜的使用春天mvc與Apache。

您將Tomcat配置爲運行Spring應用程序(通過配置web.xml),然後配置Tomcat以使用mod-jk與Apache連接。你必須設置你的Apache配置文件,以瞭解MOD-JK,並配置MOD-jk.conf(參見:http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html

希望這有助於

+0

我想我不清楚我的問題....讓我添加一些細節。我已經建立了我的春天mvc項目在Eclipse中,我已經在那裏安裝了tomcat服務器。如果我通過tomcat,一切都很好......頁面greeting.html出現。但我想要的是沒有運行我想通過在地址欄中鍵入相關的URL瀏覽到greeting.html的Tomcat服務器。爲此我安裝了apache。你懂我的意思了嗎?? –

+0

但你不能直接使用apache,你需要使用tomcat和den使用連接器來連接apache服務器...檢查我的答案.... apache通常用於php而不是java應用程序 –

+0

因此讓我得到這個... ..你說我不能直接使用apache ........我必須讓我的tomcat在外部運行(不在eclipse中),然後將它連接到apache然後主機...... am我對嗎? –

相關問題