IIS默認網站自動跳轉到虛擬目錄的幾種方法
這里默認頁的含義:先聲明這里是我的定義。主要是說明一下我這里默認頁的意思。所謂默認頁就是用戶在地址欄
中如果僅僅是鍵入了您的IP地址,那么系統自動跳轉到的頁面。當然我們往往希望的頁面是某個Web Application的
首頁面,或者是登錄頁面。
為了說明清楚,我這里舉一個例子。比如你在IIS中有一個Web Application叫MyWebApp,其中的登錄界面是Login.aspx,那么通過設置Login.aspx作為默認頁,用戶在從瀏覽器的地址欄中輸入http://xxx.xxx.xxx.xxx 后鍵入回車,那么系統將自動顯示MyWebApp的Login.aspx。和用戶直接在瀏覽器的地址欄中輸入http://xxx.xxx.xxx.xxx/MyWebApp/Login.aspx的效果是一樣的。
1. 通過默認的html文件跳轉到虛擬目錄(網址帶虛擬目錄)
在IIS的根目錄,一般是c:\Inetpub\wwwroot\下建立一個如index.html的文件
(合適地方也可以自己命名文件,但是這個文件名必須先在IIS中進行注冊,
具體的方法是:IIS -> 網站 -> 默認網站(Default Web Site): 打開主窗口中間 “IIS”部分的默認文檔,點擊最右側窗格 “添加”,輸入index.html (本例是index.html,可以根據自己的需要更換)確定;然后“上移”到最頂部即可完成。)
然后在您建立的index.html文件中寫入以下語句:
<meta HTTP-EQUIV=REFRESH CONTENT=" 0; URL=MyWebApp/Login.aspx "> /* 這里HTTP-EQUIV=REFRESH CONTENT ="0, ; URL=MyWebApp/Login.aspx">表示沒有延時,直接跳轉到指定的URL中。*/
網址變化:
這種重定向的做法使瀏覽器上的URL地址是和你手工敲入的地址是一樣的(網址帶虛擬目錄)。
你原來的地址是http://localhost/MyWebApp/Login.aspx 那么在重定向后依然是 http://localhost/MyWebApp/Login.aspx。
2. 通過設置IIS的本地路徑實現
打開IIS,展開到“網站”-“默認網站”,找到主窗口最右側的操作欄,單擊打開“基本設置”,彈出編輯網站對話框。
在“物理路徑”將默認本地路徑的“%SystemDrive%\inetpub\wwwroot”修改為“c:\inetpub\wwwroot\MyWebApp”,這樣IIS的默認搜索路徑就是您制定這個WebApplication所在的路徑了,也就是MyWebApp的文件夾內。
這樣你再通過設置MyWebApp的屬性中的默認文檔為Login.aspx,那么在啟動的時候,只要輸入http://localhost 那么也就會直接跳轉到Login.aspx頁面;
但是這個時候通過觀察地址欄你可以看到,地址欄中的URL是http://localhost/,而如果您跳轉到了MyWebApp的其他頁面,比如還有一個Main.aspx頁面,那么地址將是http://localhost/Main.aspx ,因為這里的localhost不再是指到wwwroot目錄了,而是直接指向了MyWebApp的目錄,所以看上去URL似乎省略了。
同時通過這種設置方法后,還有一個附帶的影響,你會發現IIS的默認網站列表中,少了很多原有的網站,那些網站無一例外都是在wwwroot下的,由於現在IIS直接指向了MyWebApp目錄,那么那些在wwwroot中的文件夾將無法顯示在列表中了。這個可能造成很多不方便的地方。
網址變化:
這種做法使瀏覽器上的URL地址是隱藏虛擬目錄的(網址不帶虛擬目錄)。此方法用得最廣泛。
若你之前的地址是http://localhost/MyWebApp/Login.aspx 那么使用此方法后新網址是 http://localhost/Login.aspx
3. 通過“重定向到URL選項”實現
通過HTTP重寫模塊rewrite,實現網址的重定向。
第一步:從微軟的官方網站下載HTTP重寫模塊rewrite2.0(這里以64位為例):http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=1b8c7bd8-8824-4408-b8fc-49dc7f951a00;
同樣在IIS的選擇“重定向到URL選項”這里需要注意的是,對應“此計算機上的目錄”中的“本地路徑”里的路徑是會對IIS全局產生影響的;
所以如果你在“本地路徑”中寫入的是c:/inetpub/wwwroot/MyWebApp的話,那么如果你在“重定向到URL選項”中寫入 “/MyWebApp”那么實際定向的是“http://localhost/MyWebApp/MyWebApp”這顯然是找不到指定的文件的。(當然如果您是多層目錄,那么就沒有這個問題了)
在設置好了“本地路徑”后,就可以通過“重定向到URL選項”的“重定向”中寫入“/MyWebApp”即您的虛擬目錄。然后選擇“此位置下的目錄”,就可以了。
網址變化:
這種重定向的做法使瀏覽器上的URL地址是隱藏虛擬目錄的(網址不帶虛擬目錄)。
你原來的地址是http://localhost/MyWebApp/Login.aspx 那么在重定向后依然是 http://localhost/Login.aspx。
實際上是301、302重定向。——如: http 自動跳轉https 等,網站全局生效。
·