2013-01-04 68 views
-3

類似於this的問題,但沒有得到回覆。我希望能夠逐步指導我需要更改哪些文件,以及在我的maven網絡應用程序項目中確保與我的webapp的所有連接均通過ssl進行。我在我的搜索中發現了this,但它似乎寫得不好,從2006年開始並沒有涵蓋Maven。任何幫助你可以給予讚賞。tomcat7上的SSL與maven

回答

1

你的第一個鏈接確實得到了答案;我沒有看到有關您的第二個鏈接的任何錯誤的書面或過時的內容;而Maven是一種構建技術,與運行時發生的事情無關,由運行時本身決定。這個問題完全取決於你在web.xml中的內容,正如該文章中所述。

2

我想問一個問題的澄清,但我的代表不允許它 - 所以我會盡我所能來回答。大多數情況下,我不清楚您是要使用Tomcat服務器還是使用Maven插件提供的嵌入式Tomcat實例。

首先,我通常將http重定向到https的設置是使用帶有mod_rewrite規則的Apache Web服務器。

這就是說,如果我正確理解您要完成的是您想使用Maven爲您的應用程序動態配置您的WEB-INF/web.xml或任何其他適用的上下文配置,作爲構建以配置Tomcat將http頁面請求重定向到https。 Here是一個在Tomcat中將http請求重定向到https的示例

我該如何解決這個問題是爲了確保爲您的Tomcat實例配置了Maven settings.xml。例如:

<settings> 
    <servers> 
     <server> 
      <id>myserver</id> 
      <username>admin</username> 
      <password>admin</password> 
     </server> 
</servers> 

如果你想使用嵌入式Tomcat服務器在Maven的Tomcat的插件,你需要編輯的pom.xml到這樣的事情:

<build> 
<finalName>sw</finalName> 
<plugins> 
    <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>tomcat7-maven-plugin</artifactId> 
     <version>2.0</version> 
     <configuration> 
       <server>myserver</server> 
       <path>/sw</path> 
     </configuration> 
    </plugin> 
</plugins> 

然後,在pom.xml的maven-tomcat-plugin設置中,可以按照this規範指定插件參數,遵循上面的示例配置指南。我會指定參數如<contextFile>, <httpsPort>, <keystoreFile>, <keystorePass>, <tomcatWebXml>, and <warSourceDirectory>

恐怕如果您想爲現有Tomcat服務器(而不是Maven嵌入式)動態配置web.xml,context.xml或server.xml,則不應使用Maven去做這個。相反,您應該提前編輯這些文件,然後相應地配置tomcat:deploy目標。