win10 IIS網站部署實錄
摘要
- 啟用IIS
- 設定url預設文件
- http500問題
- asp錯誤資訊除錯
- asp啟用父路徑
- 64位系統下的Access資料庫驅動問題
背景
公司購買了一個網站模板,想要在IIS搭建並維護成公司自己的網站。
測試環境
作業系統:64位win10專業版(創作者更新)
IIS10.0:作業系統自帶
網站後臺:asp
網站前臺:html
網站資料庫:access
IE11瀏覽器
部署過程
一、啟用IIS功能
1、開啟windows功能:執行(win+R)->OptionalFeatures
2、完全安裝IIS功能(為了避免可能出現的不必要的錯誤),勾選所有功能下的子專案(不勾子專案預設是最小安裝)。如下圖紅框所示:
3、安裝完畢需要重啟電腦。
4、重啟完畢後在瀏覽器輸入localhost後回車,若出現歡迎頁面則說明IIS已經成功安裝。
二、新增網站
1、開啟計算機管理控制檯:(win+R)->compmgmt.msc;
2、如下圖所示,依次點選服務和應用程式->IIS管事器->雙擊伺服器名(計算機名)->右擊網站->新增網站
3、輸入網站名稱->選擇物理路徑->更改埠號(預設的80埠被IIS預設的網站佔用了,如想用80,可將預設網站刪除或停止)->確定。
4、瀏覽器輸入localhost:8888,發現前臺已經可以訪問了。如下圖:
5、根據說明訪問網站asp後臺,在瀏覽器輸入localhost:8888/adminback。結果如下圖:
6、圖示的解決方案有兩種:啟用目錄瀏覽或配置預設文件。啟用目錄瀏覽後效果如下圖:
7、我們想要的顯然並不是上面的頁面目錄,而是跳轉到一個後臺的登陸介面(經過分析是login.asp)。所以我們需要配置一下adminback這個目錄的預設文件。設定後臺預設文件:選中adminback->雙擊預設文件->新增->輸入login.asp->確定。
如下圖:
8、重新整理頁面後,報http500錯誤。如下圖:
三、解決asp後臺報錯問題
1、百度一下你就知道,可能引起http500錯誤的原因有很多種,我們需要進一步明確知道具體的錯誤原因:
去除【工具->Internet選項->高階->顯示友好的HTTP錯誤資訊】前的複選框,如下圖所示:
2、重新整理頁面後,可以看到不再是http500錯誤了。如下圖:
3、此時可以看到,雖然不是http500錯誤了,但只是說發生了一個錯誤,asp並沒有返回具體的錯誤資訊。此時需要設定asp的除錯屬性,將錯誤傳送到瀏覽器設定為true。選中網站,在功能檢視中找到ASP並雙擊,找到除錯資訊中的“將錯誤傳送到瀏覽器”設定為true,然後應用。如下圖:
4、再次重新整理後臺頁面,終於可以看到具體的錯誤資訊了。如下圖:
5、分析原因是由於asp頁面程式碼中使用了相對路徑,而IIS安裝完後預設的asp是不允許使用相對路徑(即父路徑)的。此時需要將asp行為屬性中的啟用父路徑設定為true。如下圖:
6、再次重新整理頁面,又出現了新的’800a0e7a’錯誤,如下圖:
7、資料庫連線錯誤,網上很容易就能找到具體的原因是由於64位作業系統不支援Microsoft OLE DB Provider for Jet驅動程式,導致無法連線到Access資料庫。解決辦法是應用程式池“啟用32位應用程式”設定為true即可。如下圖:
8、終於可以訪問到網站後臺,並且成功登陸了!
總結
IIS完全安裝比較省事(如果用了發現少功能,再安裝,每次都要重啟電腦)
結合實際情況,設定預設文件,啟用或禁用目錄瀏覽
IE瀏覽器要取消顯示友好的http錯誤訊息,以便除錯
asp網站需要啟用父路徑和將資訊傳送到IE瀏覽器
64位作業系統,應用程式池需要設定啟用32位應用程式,access資料庫驅動程式才能正常執行
雖然目前沒有涉及,後期維護可能會涉及到網站許可權問題。需要設定IUSR的許可權。