用過vs2005開發(fā)的兄弟們都知道,在新建一個網(wǎng)站項目的時候,要求選擇一個網(wǎng)站位置,既可以不使用iis做開發(fā)web服務器,而使用文件系統(tǒng),也就是vs2005自帶的一個web服務器運行網(wǎng)站.
我有一個項目,是在"文件系統(tǒng)"方式下開發(fā)的,數(shù)據(jù)庫系統(tǒng)是sqlserver2000,在開發(fā)時,一切正常.
但是在發(fā)布時,我們要使用iis,當項目布署到iis下時,訪問sqlserver2000的代碼無法執(zhí)行.連接數(shù)據(jù)庫時被強制要求訪問sqlserver2005,并提示了
<
在建立與服務器的連接時出錯。在連接到 sql server 2005 時,在默認的設置下 sql server 不允許進行遠程連接可能會導致此失敗。 (provider: 命名管道提供程序, error: 40 - 無法打開到 sql server 的連接)
>
切換回了"文件系統(tǒng)"方式,錯誤消失了....
解決辦法:
1.
打開iis屬性-》虛擬目錄屬性-》選net 2.0-》點‘編輯配置’-》刪除所有連接sqlexpress的項
當然,最好連全局的配置也刪除,
打開iis屬性-》站點屬性-》選net 2.0-》點‘編輯全局配置’
-》刪除所有連接sqlexpress的項
2.在應用服務器的日志中,找到了
異常信息:
異常類型: sqlexception
異常消息: 在建立與服務器的連接時出錯。在連接到 sql server 2005 時,在默認的設置下 sql server 不允許進行遠程連接可能會導致此失敗。 (provider: 命名管道提供程序, error: 40 - 無法打開到 sql server 的連接)
請求信息:
請求 url: http://localhost/test/default.aspx
請求路徑: /test/default.aspx
用戶主機地址: 127.0.0.1
用戶:
是否已經(jīng)過身份驗證: false
身份驗證類型:
線程帳戶名: nt authority/network service
于是我判斷是sqlserver服務器的問題.
3.在數(shù)據(jù)庫日志中發(fā)現(xiàn)了
您運行的 microsoft sql server 2000 版本或 microsoft sql server 2000 desktop engine (也稱為 msde) 和 microsoft windows server 2003 家族使用時存在已知的 安全弱點。為了減少計算機被某些病毒的攻擊,microsoft sql server 2000,msde 或 兩者的 tcp/ip 和 udp 網(wǎng)絡端口被禁用。要啟用這些端口,您必須從 http://www.microsoft.com/sql/downloads/default.asp 或 http://www.microsoft.com/china/sql/downloads/default.asp 安裝一個修補程序, 或 microsoft sql server 2000 或 msde 的最新服務包。
于是我換了一臺剛裝好系統(tǒng)的服務器,并下載了sp4的補丁打上了.
果然,連起來再試,成功了....
看來,還是要多打補丁啊....
新聞熱點
疑難解答
圖片精選