在 2011 年的今天,我們又再度接手了一個 ASP.NET 1.1 的網站維護,而在開發主機都正常運作了幾個月之後卻又再度遇到鬼打牆的問題,而且這個錯誤訊息真的會讓人丈二金剛摸不著頭緒【嘗試執行專案時發生錯誤: 無法在Web伺服器上啟動偵錯。無法啟動 ASP.NET 或 ATL Server 偵錯。 請確認該伺服器已正確安裝 ASP.NET 或 ATL Server。】,我跟他奮鬥了五個小時才弄清楚問題發生的主因。
... 繼續閱讀 ...
我有個客戶的主機位於中國大陸,作業系統是簡體版的 Windows Server 2003,預設網站停用中,正式網站的站台可以正常運作,但我們做的新網站安裝完之後卻發現總是無法遠端瀏覽,只能在本機看到網頁與程式都正常執行,遠端看的時候主要錯誤訊息為「HTTP 错误 401.1 - 未经授权:访问由于凭据无效被拒绝。」這台主機實在不知道被多少人荼毒過,怎麼設定就是無法讓網站成功安裝起來,即便連靜態檔案都無法存取,心裡雖然明白重灌就能解決問題,但一份不服輸的精神總想著要釐清問題才能終身解除夢魘,所幸皇天不負苦心人,問題終於找到了答案。
... 繼續閱讀 ...
目前公司的專案已經越來越多使用 .NET Framework 4.0 版本,然後舊有的網站有時後要增加一些功能或新增的功能會用到一些 .NET 4.0 編譯好的組件時就非常麻煩,要不就是重新編譯參考的組件到 2.0 版(但不一定會編譯成功),要不就是將舊有的 ASP.NET 網站直接升級到 ASP.NET 4.0,我在 VS2010 上市發表會:Web 開發效率提昇 - ASP.NET 4.0 演講時有分享一些網站升級的注意事項,不過今天我特地將手動升級網站的完整過程記錄下來,讓各位按圖施工、保證成功!^_^
... 繼續閱讀 ...
由於每個 IIS 版本之間多少都會有功能上的增進與架構上的差異,像我們在寫 ASP.NET MVC 的時候有時後就需要依據 IIS 的版本來做出一些特別的判斷,所以必須透過程式來取得正在執行的 IIS 版本資訊,在 ASP.NET 裡取得正在執行的 IIS 版本資訊原本是一件容易的事,不過當遇到了跟我們一樣的特殊情況就沒那麼簡單了,有興趣的就繼續看下去。
... 繼續閱讀 ...
要在 IIS 6.0 下安裝一個測試用的 SSL 憑證使用內建的工具可以說是非常麻煩的,不過 IIS 6.0 Resource Kit Tools 裡面有個 SelfSSL 工具可以非常快速且方便的幫你建立站台的 SSL 金鑰,並且直接將站台所有 SSL 相關設定都處理好,對於要進行 SSL 的安裝與測試來說非常的方便。
... 繼續閱讀 ...
使用 Web Deployment Tools 工具 ( 又稱 Web Deploy 或 MS Deploy ) 進行網站部署是在簡單不過的事,有興趣的人可以參考 介紹好用工具:Web Deployment Tool 1.0 ( 附心得筆記 ) 文章或 ASP.NET MVC 2 開發實戰 書籍【第11章 安裝部署】的說明,不過若更新網站時希望可以跳過更新一些重要檔案,例如 :Web.config 等,這時就必須加上特別的參數才行,這參數非常特別必須另做筆記才不會忘記。
... 繼續閱讀 ...
若網站中有那種需要讓使用者上傳檔案的目錄,都一律建議將這些目錄設定成完全沒有執行權限,在早期的 IIS6 要將特定目錄的執行權限設定為「無」是非常直覺的(如下圖示),不過由於 IIS7 整個架構的改變反而讓許多人找不到設定「執行權限」的地方,以下就是一個小提醒,讓大家能夠設定出更安全的站台環境。
... 繼續閱讀 ...
製作網站難免會做到關於檔案上傳的功能,如果為了安全考量可能會限制其特定副檔名才能上傳,以免使用者上傳了不該上傳的檔案類型(例如 *.exe 執行檔),不過光是檢查檔案結尾的副檔名真的就安全了嗎?那可不一定!如果你現在還在使用 IIS6 的話,那你可能要小心了,因為最近知名3C連鎖賣場燦坤傳出資料外洩的案件就是因為這個弱點所致。
... 繼續閱讀 ...
昨天同事將一個 ASP.NET 4.0 的網站安裝到客戶的 IIS6 主機上 (測試環境),結果過程非常不順利,他們曾經一度覺得客戶的主機不知道經過幾隻手蹂躪過了(因為有好多人在共用 Administrator 帳號)進而產生排斥安裝在客戶主機以及 “為什麼我們要用 ASP.NET 4” 的感覺,不過在一群人的努力之下最後還是克服了困難,我特別因此寫下筆記,相信這些問題有其他人也可能會遇到。
... 繼續閱讀 ...