1. 程式人生 > >設定java web工程中預設訪問首頁的幾種方式

設定java web工程中預設訪問首頁的幾種方式

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中修改此配置,設定訪問頁就可以了。