分類
ASP

自訂host的方式進行webrequest (ASP)

XML HTTPRequest , 是 ajax 的一個重要元件, 不過一直有一個問題就是指定 Request Header 的這個部分, 在 XML HTTPReqeust 裡, 使用 setRequestHeader 的這些 header 有些是可以指定的, 有些是似乎是 read-only 的, 這裡要談的就是 host 這個標題.

在 client side 的狀況下, 這件事似乎是完全不用考慮的, 因為 client-side javascript 在瀏覽器的控制下, 本來就不允許做 crossdomain 的 access 的(這是基於安全性的考量), 即使是相同子網域也一樣, 相關資料可以參考: Javascript的同一父網域下的crossdomain問題. 不過若是在 server side 就不是這樣了, 在 server side 有時可能需要做為 client 的 remoting 或 gateway 的關係, 也會利用相同的方式進行 http reqeust, 在 asp 程式碼中, 若是需要做這個功能, 一樣是起 MSXML2.XMLHTTP 這組 xml webreqeust, 不過仍有指定 host header 的問題, 即使使用了 setRequestHeader “Host”, “bbb.com.tw” 的方式, 仍無法變更原來在 Open 方法內使用的 url 指定為 http://10.10.10.10/xxx 中的 10.10.10.10 的 host header , 不過用 setRequestHeader “Host”, “bbb.com.tw” 也不會有任何錯誤.

這裡將介紹另一組 api 供類似功能, 但又可以指定 Host Header 功能的一組元件, Windows HTTP Services, 這組元件用法幾乎和 MSXML2.XMLHTTP 完全相同, 而且又可以指定 Host, 所以在使用上可以有更多的應用, 例如多主機架構下, 指定 ip 方式訪問主機, 並帶上對應的主機標題(Host Header), 如此一來便能在指定 ip 下的 http 訪問又能加上 host header.

以下為範例程式碼:

Set WinHttpReq = CreateObject("WinHttp.WinHttpRequest.5.1")
WinHttpReq.Open "GET", "http://192.168.1.1/test.php", false
WinHttpReq.SetRequestHeader "Host", "myurl.com.tw"
WinHttpReq.Send
httprsp = WinHttpReq.ResponseText
Set WinHttpReq = Nothing

這個最大的用途是做測試環境及主機標題限制狀況下使用, 又或多主機(平衡負載)對應時, 要指定訪問固定主機的頁面時會使用到.

分類
TatterTools

重導用戶至手機網址插件

好一陣子沒寫 plugin 了, 用手機瀏覽 tattertools 的網頁, 本來就存在網址 https://diary.tw/tim/m 這個功能, 不過若是直接用手機瀏覽至文章的話, 例如: https://diary.tw/tim/494 , 應該要被 redirect 至 https://diary.tw/tim/m/494 . 這個功能一直很想實作, 卻沒時間也一直沒想法怎麼架構這個插件.

今天用手機上網找資料, 找到自己的網站, 連回來, 連到原來正常的網頁, 但實在太大又不方便, 雖然自己知道可以加上 /m 來改網址達到手機可觀看的版本, 但別人不見得會知道啊, 所以今天就來寫這個小插件.

架構上用了比較簡單的 tagname 方式實作這個插件, 所以要用的使用者, 麻煩就將 [ ##_MobileRedirect_## ] (注意要去除[]間的空白)放在 skin 上, (放在愈前面愈好, 最好是在 < head>之後, 或是 <body>之後, 如此才能快速作用(用javascript重導的).

判定的方式利用了 Russell Beattie’s Weblog (link) 的 Mobile Browser Detection in PHP 這篇文章內的判定手機方式來達成, 一共分為兩個步驟:

先判定 directive ($suri[“directive”]) 是 “/”, 也就是首頁或是內容頁(用數字版本的), 詳情可以參考: TT的$suri好用資訊 這篇文章.
接下來再判定是否為手機用戶, 這個就用 $isMobile 來判定

一旦兩者皆符合時, 就重導至 /m 的手機版本網頁.

請各位有空試看看, 若有任何問題或建議, 歡迎提出來哦!

插件下載:
MobileRedirect.zip

分類
好用軟體

gmail和firebug有衝突哦!?

今天使用 gmail 時, 才剛登入, 就出現斗大的字:

是哦!? 怎麼會這樣咧, 看起來應該是 ajax 的使用量較大的關係, 是不一定會有影響, 我們來看看他的說明如何改善:
http://mail.google.com/support/bin/answer.py?hl=zh_TW&ctx=mail&answer=77355

居然要停用掉 firebug 的 net monitor 功能, 看起來的確和大量的 xmlwebrequest 有密切的關係, 不過除非真的慢到不能用, 否則不會想停掉這麼好用的 firebug 工具咧.

若有使用 firebug 的朋友們在使用 gmail 有這個效能問題的話, 可以參考看看囉!

分類
Windows

windows vista sp1繁體中文出來囉

延遲已久的 vista sp1繁體中文版出來囉.

之前在 zdnet 上的消息, vista sp1 繁體中文版即將上市了, 參見: Vista SP1中文版五月釋出 相容性成賣點, 相較於英文版的 sp1, 的確讓大家等了好一陣子, 有在使用 vista 的用戶快去下載安裝囉!

官方連結如下:
KB936330:x64 系統的 Windows Vista Service Pack 1 All Language Standalone 版
KB936330:Windows Vista Service Pack 1 All Language Standalone 版 <-這是32bit版
Windows Vista Service Pack 1 All Language Standalone 版 CD ISO <-這是32bit版cd image
Windows Vista Service Pack 1 All Language Standalone 版 DVD ISO <-這是32和64bit的dvd image

快用看看吧!

另外順帶一提的, server 2008 的版本, 由於核心和 vista 是一樣的, 所以在發行時, 已是 with sp1 的狀況囉, 可以參考下面的截圖:

IIS 7 BitRate Throttling 模組

在以往的 iis 限流功能上, 一直是以整個 web 站台的總流量來進行限流管理, 當然這也算是一種限流管理方式, 但在現今這種影音應用的環境下, 相信如何能有效應用頻寬並進一步來節省成本, 相信是很重要的課題.

以往要在 web server 上做流量管理, 最理想的方式是做 per connection 的限流, 這個功能在 iis 上並沒有提供, 不過在 apache 上有個 mod_bandwidth 模組可以做到, 他的原理就是進行單一 connection 的流量限制, 在這種狀況下, 就可以有效地管理每一個 connection 的流量, 簡單地說, 若是放在 web 上的影音內容, bitrate 是 300kbps 的話, 我們可以利用 mod_bandwidth 將流量限制在 330kbps左右, 讓這些影音內容能在邊下載邊看的速度下進行觀賞, 這樣最重要的是對 server 端能節省頻寬. 因為一般人也不見得會整個看完, 若是用很快的速度讓使用者下載, 事實上會蠻浪費頻寬的.

然而隨著在 iis 7 上提供 BitRate Throttling模組功能時, 這些狀況就會改觀了, 根據技術文件提到, 這個模組可以根據媒體檔案內容的 mime-type 及 bitrate header進行流量限制, 並提供了前面多少時間(幾秒)的快速下載, 之後根據 bitrate進行限流, 看起來彈性及功能遠比 apache 的 mod_bandwidth 模組有更大的彈性及好處.

實務上, 這將會是一個相當有效節省頻寬的一個管理方式, 這個部分相信對未來影音應用的普及下, 將會發揮更大的作用哦.

這篇介紹了如何偵測 bit-rate的方式及設置方式:
http://learn.iis.net/page.aspx/149/bit-rate-throttling-extensibility-walkthrough/

這篇介紹如何安裝這個模組:
http://learn.iis.net/page.aspx/147/bit-rate-throttling-setup-walkthrough/

這篇介紹如何設定及驗證:
http://learn.iis.net/page.aspx/148/bit-rate-throttling-configuration-walkthrough/

其他相關閱讀:

這篇有實作後的流量比較結果:

http://blogs.msdn.com/jijia/archive/2007/12/30/iis-7-0-bandwidth-throttling.aspx

分類
好用軟體

office 2007相容套件

自從 office 2007 上市後, 愈來愈多的 office 檔案後面多了 “x”, 像是 docx, pptx, xlsx 等, 讓沒有安裝 office 2007 的 user 無法開啟這些檔案. 經過同事介紹, 有個 office 2007 檔案格式相容性套件, 可以供使用: 連結

根據該網頁說明, 可以達到這樣的功能:

在具備 Microsoft Office 2000、Office XP 或 Office 2003,同時也安裝相容性套件的情形下,您將可以使用 Word、Excel 和 PowerPoint 2007 的新檔案格式開啟、編輯與儲存檔案。

這樣看起來應該是 office 2000, office xp, office 2003 都可以享受不用升級就可以開啟該檔案. 根據實測的結果的確可以達到這樣的效果, 還真的蠻方便的, 供大家參考.

stage6關站囉

最早是在 stage6.divx.com 就看到這個利用 divx 做為 codec 的影音分享網站, 由於他的品質非常好, 也可以達到幾乎HD的效果, 對於這個網站, 就常常到訪關心.

前一陣子(大約在2008年初)他整個將網域改為 www.stage6.com, 看起來應該是要獨立經營這個影音分享服務, 可以從下面 alexa 圖表得到改域名的狀況:

不過這個網站利用了 DivX 的 codec , 讓在網站上的影音分享內容也可以達到娛樂的品質, 再加上設計十分不錯的播放器(可以在 IE 及 FF 都可用), 具體的好處可以參考這篇文章:
好物!甜美的Stage6線上影音站台詳解

今天拜訪了這個網站, 發現已經貼出停止服務公告了, 看起來可能龐大的資源(包含頻寬, 服務器, 存放空間)讓他們無法繼續服務下去. 不過 divx player 仍會繼續開發下去, 也會繼續維護.

看到這樣的消息真的令人感到可惜咧. 其他相關文章:
Stage6關站了
DivX Stage6影片分享網站
Stage6:又一個科技界的嘆息! 將於2008/02/28關閉!
stage6即將於2/28關站
Stage6.com 關站了..

skydrive台灣終於可用了

skydrive.live.com 是 live.com 下的一個網路分享空間服務, 之前已提供了許多地區, 台灣一直沒有開放這項功能, 直到前一陣子終於有了, 可參閱微軟的官方新聞及相關資料:

http://www.microsoft.com/taiwan/press/2008/02/0225.mspx
http://www.zdnet.com.tw/news/software/0,2000085678,20127733,00.htm

官方 blog 提供相當完整及詳細的介紹:
http://2008skydrive.spaces.live.com/

這個服務的確相當吸引人, 不僅空間蠻大的, 也很容易操作使用, 再加上方便區分的個人使用或是好友, 或是公開, 這樣的分享空間還真的是蠻方便的. 不過使用一下會發現有個相當不理想的效果, 就是上傳速度真的很慢, 實際測試的結果大約是 250kbps~280kbps的速率, 若是檔案大的狀況, 就會真的等很久呢, 而下載的速度也不是很理想, 比上傳的速度還慢, 大約是在 100kbps 上下, 希望能快點改進囉! (另外在實測還還發現一個小問題, 就是時間的部分, 上傳時間不是實際上傳的當地時間, 而是早8個小時的時間, 可能是 GMT 的時間吧)

早期 yahoo 有個公事包, 也是類似的服務, 不過空間小多了(因為是早期的服務), 僅有 30MB 的空間, 網址是在 http://briefcase.yahoo.com (台灣是在 http://tw.briefcase.yahoo.com).

網頁空間服務真的不算是很好做的一項服務, 除了需要大量的空間外, 還有內容問題及管理的問題等, 算是一種通用服務, 如何能有效發揮這個服務的內容, 就要看這個菜怎麼烹調囉!

分類
Blog服務

MSN即時熱線?

到 msn 首頁後發現有個新服務 “MSN即時熱線”, 原本以為是 VOIP 還是什麼語音的新服務, 原來是將 msn messager 的網頁內嵌語法的功能發佈出來. 詳細介紹可以參考:

http://wowimme.spaces.live.com/

其實這是將他們原來的 web messager api 開放出來, 把功能開放至”暱名”使用者, 也就是訪客不需要下載任何應用程式(application)就可以進行 msn, 而且他的介面同時提供了選擇, 畫面如下:

分類
好用軟體

Windows Mobile好用的記憶體回收工具

Windows Mobile 作業系統, 在手機上有著像是 windows 的 friendly 操作介面, 又有多樣的應用程式可用的環境, 真的很方便, 但是最為人垢病的部分, 就是有關於記憶體的使用, 會愈用愈少的狀況, 最後久了也就只能重新開機來解決.

有個小工具能有效解決這個問題, 而且還是免費的小工具, Oxios Memory !!
這個小工具支援了大部分的 windows pda 及 mobile os, 可以協助將一些記憶體從系統中釋放回來, 而且是以很安全的方式, 也就是對各應用程式發出訊息的方式做記憶體的釋放, 對於不想重開機, 又想釋放記憶體的狀況下, 十分好用. 不過還是不能完整釋放回所有的記憶體, 但效果已經相當不錯了, 免費又方便的小工具, 有用 windows mobile 的朋友們, 一定要用看看!

另外他的網站若使用手機瀏覽器訪問的話, 會出現手機版本的介面哦, 非常方便手機的用戶瀏覽他的網站!