設定java web工程中預設訪問首頁的幾種方式
阿新 • • 發佈:2019-02-02
1.demo中最常見的方式是在工程下的web.xml中設定(有時候根據業務可能需要設定action,在action中處理邏輯載入跳轉什麼的,比較少):
<welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list>
2.使用Urlrewrite地址重寫,優點還是挺多的,比如安全效能,具體可以百度下,下面介紹使用方式:
首先還是匯入 urlrewrite 的jar包,在web.xml中配置
<!-- urlRwrite過濾器--><filter> <filter-name>UrlRewriteFilter</filter-name> <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class> </filter> <filter-mapping> <filter-name>UrlRewriteFilter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> <dispatcher>FORWARD</dispatcher> </filter-mapping>
然後在WEB-INF目錄下 新建 urlrewrite.xml
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE urlrewrite PUBLIC "-//tuckey.org//DTD UrlRewrite 4.0//EN" "http://www.tuckey.org/res/dtds/urlrewrite4.0.dtd"> <urlrewrite decode-using="UTF-8"> <!-- 規則自己定義 實現URL的重寫 之前專案上的,這裡簡單看下,理解即可 --> <outbound-rule encodefirst="true"> <from>/service/login/login</from> <to>/</to> </outbound-rule> <outbound-rule encodefirst="true"> <from>^(.*);jsessionid=.*$</from> <to>$1</to> </outbound-rule> <outbound-rule match-type="wildcard"> <from>*;jsessionid=*</from> <to>$1</to> </outbound-rule> <rule> <from>/$</from> <to>/service/login/login</to> </rule> </urlrewrite>
簡單說下:
UrlRewrite匹配模式:正則表示式和萬用字元匹配
rule 是主要規則節點,from 和to是它下面的兩個子節點,from:請求的URL,to:轉到的真實的URL。
其他的看下UrlRewrite文件可以更好的理解
3.nginx設定首頁
這也是比較常用的一種方法,nginx大多公司也在用這個服務,很成熟。nginx的反向代理等方面還是很值得研究學習的,好了,不多說,下面看如何配置
在配置檔案的 location 中設定訪問頁。直接上程式碼
1 2 3 4 5 6 7 8 9 10 |
server
{
keepalive_requests 100 ;
#單連線請求上限次數。
listen
111 ;
#監聽埠
server_name 127.0 . 0.1 ;
#監聽地址
location
~*^.+$ { #請求的url過濾,正則匹配,
#root
path; #根目錄
#index
#設定預設頁
proxy_pass
http: //myserver;
#請求轉向自定義的伺服器列表
}
}
|
建議大家看看nginx的使用及原理。
4.Tomcat 設定專案首頁
更改 tomcat中server.xml和web.xml即可實現
在<Host></Host>中新增<Context path="虛擬目錄的名字" docBase="你要設定的網站根目錄" debug="0"/>
在web.xml中修改此配置,設定訪問頁就可以了。