一、背景
很榮幸接手了成績(jī)系統(tǒng)項(xiàng)目并當(dāng)了組長(zhǎng),也正直搬家時(shí)期,同時(shí)也換了新的服務(wù)器和數(shù)據(jù)庫(kù),上一版本的系統(tǒng)我們得修改服務(wù)器地址和數(shù)據(jù)庫(kù)的鏈接,然后重新發(fā)布到新的服務(wù)器上,才能讓之前的系統(tǒng)跑起來(lái),讓我有機(jī)會(huì)在服務(wù)器上發(fā)布了一次系統(tǒng)。
二、在服務(wù)器上使用IIS部署
都是IIS部署網(wǎng)站,個(gè)人覺得應(yīng)該和本地發(fā)布是一樣的,但這次是在服務(wù)器上部署,而且都是前人的成果,不敢亂來(lái)。
在部署之前先“瀏覽”一下以前服務(wù)器上是否能夠成功,確保在新的服務(wù)器上發(fā)布出現(xiàn)問(wèn)題時(shí)可以排除是原來(lái)項(xiàng)目的問(wèn)題。下面以部署ITOO.ResultTeacherMark.Client為例在服務(wù)器上使用IIS部署網(wǎng)站。
1、把原來(lái)服務(wù)器上的文件直接拷到新的服務(wù)器上,搜索“IIS”→打開“信息服務(wù)(IIS)管理器”,如下:

2、右擊“網(wǎng)站”→“添加網(wǎng)站”:

注意端口是有一定的范圍,這時(shí)在左側(cè)已經(jīng)可以看到我們新建的網(wǎng)站了,名稱為ITOO.ResultTeacherMark.Client
3、修改網(wǎng)站的權(quán)限為everyone,右擊網(wǎng)站名稱→編輯權(quán)限→安全→編輯→添加:

在“輸入對(duì)象名稱來(lái)選擇”框里輸入E,點(diǎn)擊“檢查名稱”,就可以把網(wǎng)站權(quán)限定為Everyone,在Everyone的權(quán)限中“允許”列全都勾上。

4、編輯應(yīng)用程序池

IIS默認(rèn)用的.NET Framework是2.0版本,這里選用的是所發(fā)布網(wǎng)站的框架版本,一般如果用的是VS2010以上版本開發(fā)的話選擇的是V4.0,托管道模式要選擇“集成”,如果選擇“經(jīng)典”的話,運(yùn)行時(shí)可能會(huì)出錯(cuò)。
5、瀏覽網(wǎng)站
找到剛發(fā)布好的網(wǎng)站→選擇內(nèi)容視圖→找到網(wǎng)站的起始頁(yè)面→瀏覽,就可以看到咱們發(fā)布的網(wǎng)站了O(∩_∩)O~~

在發(fā)布的過(guò)程中遇到的一個(gè)比較難的問(wèn)題:windows7中IIS運(yùn)行ASP時(shí)出現(xiàn)ADODB.Connection錯(cuò)誤“800a0e7a”
原因:
64位系統(tǒng)下IIS無(wú)法運(yùn)行32位程序,由于64位操作系統(tǒng)不支持MicrosoftOLE DB Provider for Jet 驅(qū)動(dòng)程序,也不支持更多的Microsofte AccessDriver (*.mdf)方式連接。
解決方法:
將64位IIS停止,啟動(dòng)32位,這是vista的解決方法。
(1)高級(jí)設(shè)置:

?。?)啟動(dòng)32位:

三、總結(jié)
有時(shí)在本地IIS發(fā)布沒有問(wèn)題,可能在服務(wù)器上發(fā)布會(huì)出錯(cuò),原因主要是系統(tǒng)和IIS版本不同,需要修改一些設(shè)置,本質(zhì)上是一樣的。多多動(dòng)手就知道其中的緣由了。