tomcat服務器中設置.do等地址為首頁的方法


眾所周知,在java web程序中,可以利用web.xml設置網站首頁,如:

<welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

但是如果我們的首頁需要加載數據,通過struts的action、Spring mvc等框架實現的首頁,這樣設置就不行了。如配置:

<welcome-file>index.do</welcome-file>

index.do是自己實現的一個Action或者controller。這樣訪問時會提示404錯誤。並不會按照我們想象的直接訪問index.do。

其實welcome-file這個標記本身就能說明問題,因為它讓你指定的是file,而不是“page”,所以這個地址必須為一個實際存在的文件。

有很多人說直接在index.jsp里forword或者redirect到index.do就可以了,這樣做倒是能大概實現,但是用戶感覺多少有些奇怪。

如何這個問題解決呢?其實超級簡單。只要建立一個空文件就可以了。如我們要設置首頁為struts的index.do為首頁,直接配置

<welcome-file>index.do</welcome-file>
然后在web根目錄創建一個index.do的空文件即可。

有人可能疑惑會不會直接訪問到這個空文件里,答案是根本不會。如strtuts1中,dipatcherservlet的servlet mappting為/*.do,這樣所有.do請求都會被攔截,由strtus處理,也就會直接訪問真正的index.do這個action了。

有了這個空文件,同樣也可以在apache的DirectoryIndex里配置首頁了。原理是一樣的。

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com