網頁

2010年9月30日 星期四

Create New ASP.NET 2.0 Web Site

本文主要介紹如何在 VS2005 來建立一個新的ASP.NET專案,以供有興趣的朋友參考。

要在VS2005建立一個新的ASP.NET專案,請從選單中 [File]->[New]->[Web Site]來建立一個新網站。












這時專案會有幾個地方需要做選項設定,說明如下:
1. Templates:請選擇 ASP.NET Web Site
2. Location:有 File System、HTTP及FTP這三種。這邊請選擇 HTTP.。
3. Language:可使用的語言有 VB、C#及J#(Express 不支援J#)。
4. Browse:網站位置有四種模式可以選擇:
4.1 File System:VS2005新增的模式,不需要本機電腦安裝IIS,內建了一個『ASP.NET程式開發伺服器』。
4.2 Local IIS:使用本機電腦的IIS伺服器。
4.3 Ftp Site:可連接到具有讀取和寫入權限的FTP伺服器,直接在上面建立和編輯網站。
4.4 Remote Site:讓你將專案建立在另一台遠端有裝IIS的電腦上,但這台電腦必須要有 FrontPage Server Extension。

網站的頁面和資料夾都是儲存在預設的IIS資料夾下,也就是 C:\Inetpub\wwwroot。

依照你環境選擇所需的模式,一般方便測試還是選擇 Local IIS ,再選擇 Create New Web Applicaion(紅色星號位置) ,輸入專案名稱就可以了。


此時VS2005就會產生新專案,如果順利的話就可以編譯(Build Web Site)和執行(View in Browser)了,應該會看到一個全新空白的網頁。

應該很少人會像豬頭的我發現以下情況,我都習慣用預設的去裝軟體,所以在 Windows 7上安裝IIS也是如此,所以在產生新專案時我就發生了無法設定ASP.NET 2.0網站的錯誤,要我手動設定。


 解決方式如下:
從[控制台]->[程式與功能]->[開啟或關閉Windows功能],然後照左圖將選項重新勾選安裝,再重新來產生專案就可以了。


閱讀全文...

2010年9月27日 星期一

ASP.NET 重大資安弱點

由於有資安人員發現了 asp.net 的資安弱點,主要針對 .NET 在實作 AES 加解密演算法問題,讓駭客能在短時間內猜出網站的加密金鑰後入侵你的系統。只要是你的網站是以 asp.net 為基礎的都有這弱點,都會遭此弱點攻擊。

微軟於 2010/9/17 正是公布了 Microsoft Security Advisory (2416728) Vulnerability in ASP.NET Could Allow Information Disclosure 這個弱點,但是目前並沒有完整的解決方法,只提供了緊急應變措施(Workarounds),請參照網頁上的說明對網站進行修正。

主要緊急應變措施如下:
1. 開啟 web.config
2. 修改 <customerrors> mode 與 defaultRedirect 屬性,兩個屬性都要設定
2.1 .NET 3.5 和 之前版本
<configuration>
<location allowOverride="false">
<system.web>
<customErrors mode="On" defaultRedirect="~/ error.html" />
</system.web>
</location>
</configuration>

2.2 .NET 3.5 SP1 和 之後版本
<configuration>
<location allowOverride="false">
<system.web>
<customErrors mode="On" redirectMode="ResponseRewrite" defaultRedirect="~/ErrorPage.aspx" />
</system.web>
</location>
</configuration>

3. 新增一個錯誤訊息網頁,微軟有提供這網頁的寫法。

另有一個網頁可參考, ScottGu's Blog 上面有提供一個工具,可以針對此弱點檢查你的網站。

閱讀全文...

IIS7.0搭配VS2005新增 WEB Site Project 時出現無權限的問題

本想在公司新的nb寫個小網站來查詢統計一下交易資料,沒想到居然出現一個小插曲。

在 Windows 7 是使用 IIS 7 來管理 WEB 網站,當用 VS2005 要新增一個網頁專案時,卻發現 IIS 沒安裝,於是 控制台->程式與功能->開啟或關閉windows功能,將 IIS 裝上,此時沒想太多,就按照預設選項就安裝了,結果就發生了沒權限的問題:說帳號不屬於 administrator group 所以不能存取 IIS metabase。



嗯,很清楚的錯誤訊息,就只好從 控制台->使用者帳戶->管理使用者帳戶 來查證,確認帳號已經屬於 administrator group 。

山不轉路轉,用 Windows 7 的功能,讓程式用 administrator 的身分來執行總行了吧。

結果還是一樣的錯誤訊息, -.-|||

好吧,來檢查 IIS 7到底裝了哪些東西,控制台->程式與功能->開啟或關閉windows功能,發現原來是相容舊版本的 IIS 項目都沒裝,照下圖將 IIS 6 管理相容性的選項都打勾安裝。


裝好後,再來試一次,讓 VS2005 以 administrator 身分執行,在新增網頁專案後,終於可以了。
VS2005 真的夠老了,總會遇到很多想不到的問題,雖然現在有 VS2010 express 這種免費的可以使用,但因為 VS2005 是微軟送的有版權的正式版,所以就一直用下去了,主要操作介面也習慣了。


閱讀全文...

2010年9月14日 星期二

歷經千辛萬苦的HelloWorld

在經歷的 c++ compiler 的編譯失敗,改用回 Visual Studio
沒想到接下來卻是 wxWidgets 千辛萬苦的編譯路程
經過不斷的嘗試,終於 wxWidgets 的 HelloWorld 顯示出來了


wxWidgets 一個和 MFC 非常相像的東西,主要強大在跨平台

閱讀全文...

2010年9月8日 星期三

微軟癮很難戒

Visual Studio 的各個compile都蠻好用的,當有戒掉微軟這念頭時,就想到那還有哪些compile可以用,第一時間就想到GCC。

GCC 是 GNU Compiler Collection (GNU 編譯器總集)的縮寫,為 GNU 計畫中一套多種程式語言編譯器的集合。但是大部分用到 gcc 這東西都是 unix-like 的環境,若要在 windows 中使用 gcc 那就是要用 MinGW 了(另有一個用 Delphi 寫成的 DEV-C++,但是實在對 Delphi 無愛啊)

滿心歡喜的在 MinGW 下載的最新的安裝程式 mingw-get-inst-20100831.exe ,隨著按 下一步  迅速的安裝起來,剛開始還蠻順的,忽然畫面顯示 **** ERROR **** Get Package xxx  ,被澆了一頭冷水,啃,黑箱作業也能失敗喔,package 名字 mingw 命名的,檔案抓取位置 mingw 放的,居然還抓取錯誤,而且還是最新的安裝程式,OMG!

拜請大神 google ,發現很多遇到這樣的問題,又發現新版不穩,3rd party library還沒打算跟進升到最新版的,狂熱的火正在被澆熄。

另一個念頭產生了,手動安裝編譯好了。漂亮,最好是官網的說明可以那麼精簡,精簡到大家要手動編譯時要去 google 搜尋和問動問西的。

光兩天耗在安裝編譯上面,忽然覺得微軟的安裝程式友善多了, Open Source的東西加油好嗎?當你有強大的功能,卻沒有一個友善的帶領大家入門,一切真的只是個空談....

閱讀全文...

2010年9月7日 星期二

微軟癮

想要拋棄微軟,可是很難。
Visual Studio是個不錯的發發工具,便利性實在贏其他工具太多太多,只是裡面的東西都要錢,又常常給一堆我不想要的,包山包海戰術硬塞,最後就是提昇你的硬體,總感覺軟硬體廠商逼迫使用者升級,@@

想新建立一個開發環境,採用Open Source或free的解決方案,前提是這工具要夠長久
O & F系列最常腰斬,或是一段時間就消失了

希望也能用在ibook G4 PowerPC,小白該拿出來跑跑了
閱讀全文...

2010年8月31日 星期二

時間飛逝啊

最近工作一忙,不知不覺又曬網二個月了
閱讀全文...