<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>查理布朗的倒楣世界 &#187; 技術</title>
	<atom:link href="http://clyang.net/blog/category/tech/feed" rel="self" type="application/rss+xml" />
	<link>http://clyang.net/blog</link>
	<description>Clyang's Murmuring</description>
	<lastBuildDate>Tue, 27 Mar 2012 20:57:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>各大WordPress Plugin常用的縮圖套件出現0day</title>
		<link>http://clyang.net/blog/2011/08/03/437</link>
		<comments>http://clyang.net/blog/2011/08/03/437#comments</comments>
		<pubDate>Wed, 03 Aug 2011 12:08:04 +0000</pubDate>
		<dc:creator>clyang</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[timthumb 0day]]></category>

		<guid isPermaLink="false">http://clyang.net/blog/?p=437</guid>
		<description><![CDATA[很多套件常使用的TimThumb縮圖套件被發現0day, 可以讓惡意攻擊者植入可執行的PHP code, 影響重大, 請儘速更新到最新的版本. 以下提供快速判斷你的WordPress是否有使用到這個套件的方法: ssh進去你的伺服器 變更目錄到你的WordPress根目錄 (例如: /var/www/wp ) 使用下列指令: find . -name "*.php" -exec grep -H &#8216;TimThumb script created by Ben&#8217; {} \; 將所有找到的php檔案都更換成最新的版本即可. 再次呼籲, 有用WordPress的朋友們記得檢查一下~!]]></description>
			<content:encoded><![CDATA[<p>很多套件常使用的TimThumb縮圖套件<a href="http://markmaunder.com/2011/zero-day-vulnerability-in-many-wordpress-themes/">被發現0day</a>, 可以讓惡意攻擊者植入可執行的PHP code, 影響重大, 請儘速更新到最新的版本. 以下提供快速判斷你的WordPress是否有使用到這個套件的方法:</p>
<ol>
<li>ssh進去你的伺服器</li>
<li>變更目錄到你的WordPress根目錄 (例如: /var/www/wp )</li>
<li>使用下列指令: find . -name "*.php" -exec grep -H &#8216;TimThumb script created by Ben&#8217; {} \;</li>
<li>將所有找到的php檔案都<a href="http://timthumb.googlecode.com/svn/trunk/timthumb.php">更換成最新的版本</a>即可.</li>
</ol>
<p>再次呼籲, 有用WordPress的朋友們記得檢查一下~!</p>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><!-- Do not remove -->]]></content:encoded>
			<wfw:commentRss>http://clyang.net/blog/2011/08/03/437/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>使用Cloudflare的迷思</title>
		<link>http://clyang.net/blog/2011/07/31/429</link>
		<comments>http://clyang.net/blog/2011/07/31/429#comments</comments>
		<pubDate>Sun, 31 Jul 2011 05:28:31 +0000</pubDate>
		<dc:creator>clyang</dc:creator>
				<category><![CDATA[Cloudflare]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[cloudflare]]></category>

		<guid isPermaLink="false">http://clyang.net/blog/?p=429</guid>
		<description><![CDATA[之前寫了一篇關於cloudflare的文章, 收到了一些朋網友的信件詢問, 很多人都誤以為Cloudflare是網站的萬靈丹, 不但可以加速網站的loading速度, 更可以大幅節省流量. 這些觀點其實都沒有太大的錯誤, 但是卻很容易忽略到隱藏在背後的危機. 手頭上有在幫忙維護某一個擁有大量靜態圖片的網站, 這個特性是非常符合cloudflare的使用情境, 所以在我接手後變幫忙把她弄上去cloudflare, 結果相當的顯著, 網站loading速度變快了許多, 使用者使用意願也大幅增加, 於是帶來了更多的使用者. 聽起來一切都非常美好, 但是卻在server端觀察到, 隨著使用者的成長, 整體的system loading也跟著增加, 才猛然想起cloudflare是不會cache動態產生的檔案(其實html他也不會cache, 所以用rewrite rule去欺騙是沒有用的), 所以當你的網站吸引越來越多的使用者, 需要動態產生的內容也隨之增加, 因此造成server的loading過重. 於是進去後端做了些參數的調整, 就搞定了問題. 此外, 另外一個迷思是, 只要套上cloudflare後, 網站的response time就會進步了, 事實上, "機器的實體位置"還是很重要的, 如同之前提到的, 只要是動態產生的內容, cloudflare就會去跟你的機器索取一次內容, 所以你的機器離cloudflare遍佈在全世界機器的距離還是對response time會有所影響. 簡單地挑選步驟為: 觀察你的使用者多數位在那個國家 使用traceroute.org觀察這些國家的使用者會被導到cloudflare在全球的那個機房 &#8230; <a href="http://clyang.net/blog/2011/07/31/429">繼續閱讀 <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>之前寫了一篇關於<a href="http://www.cloudflare.com">cloudflare</a>的文章, 收到了一些朋網友的信件詢問, 很多人都誤以為Cloudflare是網站的萬靈丹, 不但可以加速網站的loading速度, 更可以大幅節省流量. 這些觀點其實都沒有太大的錯誤, 但是卻很容易忽略到隱藏在背後的危機.</p>
<p><span id="more-429"></span>
<p>手頭上有在幫忙維護某一個擁有大量靜態圖片的網站, 這個特性是非常符合<a href="http://www.cloudflare.com">cloudflare</a>的使用情境, 所以在我接手後變幫忙把她弄上去<a href="http://www.cloudflare.com">cloudflare</a>, 結果相當的顯著, 網站loading速度變快了許多, 使用者使用意願也大幅增加, 於是帶來了更多的使用者.</p>
<p>聽起來一切都非常美好, 但是卻在server端觀察到, 隨著使用者的成長, 整體的system loading也跟著增加, 才猛然想起<a href="http://www.cloudflare.com">cloudflare</a>是不會cache動態產生的檔案(其實html他也不會cache, 所以用rewrite rule去欺騙是沒有用的), 所以當你的網站吸引越來越多的使用者, 需要動態產生的內容也隨之增加, 因此造成server的loading過重. 於是進去後端做了些參數的調整, 就搞定了問題.</p>
<p>此外, 另外一個迷思是, 只要套上<a href="http://www.cloudflare.com">cloudflare</a>後, 網站的response time就會進步了, 事實上, "機器的實體位置"還是很重要的, 如同之前提到的, 只要是動態產生的內容, <a href="http://www.cloudflare.com">cloudflare</a>就會去跟你的機器索取一次內容, 所以你的機器離<a href="http://www.cloudflare.com">cloudflare</a>遍佈在全世界機器的距離還是對response time會有所影響. 簡單地挑選步驟為:</p>
<ol>
<li>觀察你的使用者多數位在那個國家</li>
<li>使用<a href="traceroute.org">traceroute.org</a>觀察這些國家的使用者會被導到<a href="http://www.cloudflare.com">cloudflare</a>在全球的那個機房</li>
<li>選擇離這些機房近的hosting provider</li>
</ol>
<p>以台灣使用者為例, 大多數都被導到<a href="http://www.cloudflare.com">cloudflare</a>為在香港或是美西的機房, 所以會建議選擇在美國西岸的provider, 以達到最好的效果.</p>
<p>最後, 這個故事教會了我們什麼? 1) 如果你後端的code寫得很爛, 使用<a href="http://www.cloudflare.com">cloudflare</a>只會加速你網站的死亡速度. 2) 透過<a href="http://www.cloudflare.com">cloudflare</a>可以快速地(這邊比較的基準是在國外的vps, 如果你是使用國內hosting的有錢大爺, 不在此列 XD)將網站的靜態內容傳遞給使用者, 沒有意外的話PV會隨之增加, 請在server端做好準備. 3) 請慎選機器的實體位置.</p>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><!-- Do not remove -->]]></content:encoded>
			<wfw:commentRss>http://clyang.net/blog/2011/07/31/429/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>使用大陸網站提供的WordPress套件請注意</title>
		<link>http://clyang.net/blog/2011/06/17/426</link>
		<comments>http://clyang.net/blog/2011/06/17/426#comments</comments>
		<pubDate>Fri, 17 Jun 2011 15:55:35 +0000</pubDate>
		<dc:creator>clyang</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[技術]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://clyang.net/blog/?p=426</guid>
		<description><![CDATA[這篇的宗旨不是在挑論套件的安全性, 這邊要提的是效率的問題, 這幾天在幫忙協助tune某個網站的效能, 本來都tune的差不多了, 卻發現在enable某個大陸分析文章關聯性的plugin後, 整個網站的loading驟增, 後來去trace code後, 發現套件本身其實撰寫上沒有任何問題, 效能的瓶頸在網路連線的速度. 該plugin在每個頁面被開啓的時候, 會嘗試連回大陸的伺服器去取得相關資訊, 由於網站host在美國,  對大陸的latency本來就比較高, 加上如果該廠商的網路品質似乎不太穩定, 就陷入了可怕的循環: user開啓網頁 -&#62; plugin連回大陸 -&#62; 下一個的request又來, 因為前個request還沒解決, 只好fork新的process來處理 -&#62; 重複回第一步 解決方法就是關掉該plugin, 網站的loading也就回覆正常了, 因此有了這篇文章, 紀錄一下這個經驗]]></description>
			<content:encoded><![CDATA[<p>這篇的宗旨不是在挑論套件的安全性, 這邊要提的是效率的問題, 這幾天在幫忙協助tune某個網站的效能, 本來都tune的差不多了, 卻發現在enable某個大陸分析文章關聯性的plugin後, 整個網站的loading驟增, 後來去trace code後, 發現套件本身其實撰寫上沒有任何問題, 效能的瓶頸在網路連線的速度. 該plugin在每個頁面被開啓的時候, 會嘗試連回大陸的伺服器去取得相關資訊, 由於網站host在美國,  對大陸的latency本來就比較高, 加上如果該廠商的網路品質似乎不太穩定, 就陷入了可怕的循環:</p>
<p>user開啓網頁 -&gt; plugin連回大陸 -&gt; 下一個的request又來, 因為前個request還沒解決, 只好fork新的process來處理 -&gt; 重複回第一步</p>
<p>解決方法就是關掉該plugin, 網站的loading也就回覆正常了, 因此有了這篇文章, 紀錄一下這個經驗 <img src='http://clyang.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><!-- Do not remove -->]]></content:encoded>
			<wfw:commentRss>http://clyang.net/blog/2011/06/17/426/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>試用Google Music Beta服務</title>
		<link>http://clyang.net/blog/2011/06/03/409</link>
		<comments>http://clyang.net/blog/2011/06/03/409#comments</comments>
		<pubDate>Fri, 03 Jun 2011 05:56:06 +0000</pubDate>
		<dc:creator>clyang</dc:creator>
				<category><![CDATA[Mac]]></category>
		<category><![CDATA[技術]]></category>
		<category><![CDATA[google music]]></category>
		<category><![CDATA[music beta]]></category>
		<category><![CDATA[music manager]]></category>

		<guid isPermaLink="false">http://clyang.net/blog/?p=409</guid>
		<description><![CDATA[    Google在前陣子的Google IO 2001推出了Google Music Beta服務,  使用者將他所擁有的mp3透過網路傳遞到Google的雲上, 之後只要你有網路, 便可以透過Google Music聆聽你收藏的音樂, 假想敵當然就是Apple即將推出的iCould服務. 推出當下, 我就填寫試用申請, 想說碰碰看運氣, 沒想到今天就在email中收到邀請函, 所以就有了這篇簡單的心得文. 進入Google Music Beta後, 首先先下載應用程式Music Manager (介面目前只有英文版, 有M$, Mac以及Linux版本), 因為我是Mac user, 所以以下安裝介面皆Mac版本: 1. 下載後, 只需將Music Manager的圖示拖曳進去Applications即可 2. 開啓Music Manager後, 程式會引導你作一些設定, 由於這是Google的產品, 第一步步驟當然是要設定你的Google account, 緊緊的把你的帳號跟服務綁在一起 &#8230; <a href="http://clyang.net/blog/2011/06/03/409">繼續閱讀 <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p> </p>
<p> </p>
<p><img title="inv.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/inv.png" border="0" alt="Inv" width="604" height="405" /></p>
<p>Google在前陣子的<a href="http://www.google.com/events/io/2011/index-live.html">Google IO 2001</a>推出了<a href="http://music.google.com">Google Music Beta</a>服務,  使用者將他所擁有的mp3透過網路傳遞到Google的雲上, 之後只要你有網路, 便可以透過Google Music聆聽你收藏的音樂, 假想敵當然就是<a href="http://apple.com">Apple</a>即將推出的iCould服務. 推出當下, 我就填寫試用申請, 想說碰碰看運氣, 沒想到今天就在email中收到邀請函, 所以就有了這篇簡單的心得文.</p>
<p><span id="more-409"></span>
<p>進入<a href="http://music.google.com">Google Music Beta</a>後, 首先先下載應用程式Music Manager (介面目前只有英文版, 有<a href="http://microsoft.com">M$,</a> <a href="http://www.apple.com/mac/">Mac</a>以及<a href="http://zh.wikipedia.org/wiki/Linux">Linux</a>版本), 因為我是<a href="http://www.apple.com/mac/">Mac</a> user, 所以以下安裝介面皆<a href="http://www.apple.com/mac/">Mac</a>版本:</p>
<p>1. 下載後, 只需將Music Manager的圖示拖曳進去Applications即可</p>
<p><img title="gmusic_ins.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/gmusic_ins.png" border="0" alt="Gmusic ins" width="577" height="459" /></p>
<p>2. 開啓Music Manager後, 程式會引導你作一些設定, 由於這是Google的產品, 第一步步驟當然是要設定你的Google account, 緊緊的把你的帳號跟服務綁在一起</p>
<p><img title="g1.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/g1.png" border="0" alt="G1" width="580" height="552" /></p>
<p>3. 接著, 指定你收藏的音樂放置的目錄, 可以指定iTune, 家目錄下的音樂資料夾或是任意一個資料夾.</p>
<p><img title="g2.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/g2.png" border="0" alt="G2" width="580" height="552" /></p>
<p>4. 讓程式自動更新到最新的版本</p>
<p><img title="g3.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/g31.png" border="0" alt="G3" width="580" height="552" /></p>
<p>5. 程式會開始掃描你剛剛指定的目錄, 看看有哪些音樂檔案可以匯入</p>
<p><img title="g4.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/g4.png" border="0" alt="G4" width="580" height="552" /></p>
<p>6. 設定完成, 你可以選擇結束設定或是直接前往<a href="http://music.google.com">Google Music Beta</a></p>
<p><img title="g5.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/g5.png" border="0" alt="G5" width="580" height="552" /></p>
<p>設定完成後, Music Manager便會在背景開始將你音樂上傳至<a href="http://google.com">Google</a>, 上傳進度以及相關的設定可以點選螢幕上方的小圖去取得:</p>
<p><img title="g_setting.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/g_setting.png" border="0" alt="G setting" width="196" height="198" /></p>
<p><img title="gmusic_st1.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/gmusic_st1.png" border="0" alt="Gmusic st1" width="748" height="503" /></p>
<p><img title="gmusic_st2.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/gmusic_st2.png" border="0" alt="Gmusic st2" width="748" height="503" /></p>
<p>接著, 來看看上傳後在<a href="http://music.google.com">Google Music Beta</a>所呈現的介面, 一登入便可以看到你所上傳全部專輯封面</p>
<p><img title="aview.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/aview.png" border="0" alt="Aview" width="837" height="229" /></p>
<p>點選專輯封面圖示後, 便可以看到歌曲的相關資訊, 也可以為歌曲評比:</p>
<p><img title="alist.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/alist.png" border="0" alt="Alist" width="842" height="412" /></p>
<p>當然, 你會想要替專輯換上美美的封面, 只需點選圖片右下方的小箭頭, 便可以編輯專輯</p>
<p><img title="e1.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/e1.png" border="0" alt="E1" width="423" height="305" /> <img title="e3.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/e3.png" border="0" alt="E3" width="432" height="426" /></p>
<p>同樣的, 也可以針對單一一首歌曲去編輯資訊:</p>
<p><img title="e2.png" src="http://clyang.net/blog/wp-content/uploads/2011/06/e2.png" border="0" alt="E2" width="520" height="236" /></p>
<p>最後, 只需點選Play Album或是雙點歌曲名稱便可以收聽歌曲, 除此之外, 也可以透過Android Market去<a href="https://market.android.com/details?id=com.google.android.music">下載官方的app</a>到行動裝置上面使用, 對於有Android裝置的朋友們是個蠻方便的選擇, 由於手邊沒有相觀裝置, 所以就不補圖了 :Q</p>
<p>同場加映, ipad2上面使用的screenshot:</p>
<p><img title="IMG_0005.PNG" src="http://clyang.net/blog/wp-content/uploads/2011/06/IMG_0005.png" border="0" alt="IMG 0005" width="800" height="600" /></p>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><!-- Do not remove -->]]></content:encoded>
			<wfw:commentRss>http://clyang.net/blog/2011/06/03/409/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>當Proxy Pac檔遭遇無法resolve的hostname</title>
		<link>http://clyang.net/blog/2011/06/01/394</link>
		<comments>http://clyang.net/blog/2011/06/01/394#comments</comments>
		<pubDate>Wed, 01 Jun 2011 05:58:54 +0000</pubDate>
		<dc:creator>clyang</dc:creator>
				<category><![CDATA[Firefox]]></category>
		<category><![CDATA[技術]]></category>
		<category><![CDATA[pac]]></category>
		<category><![CDATA[proxy]]></category>
		<category><![CDATA[proxy pac]]></category>

		<guid isPermaLink="false">http://clyang.net/blog/?p=394</guid>
		<description><![CDATA[今天在Skype聊天室中跟一位學弟討論一段proxy pac檔: function FindProxyForURL(url, host) { if(isInNet(host, &#34;172.28.0.0&#34;, &#34;255.255.0.0&#34;)) return &#34;DIRECT&#34;; else if(dnsDomainIs(host, &#34;stage.clyang.net&#34;)) return &#34;127.0.0.1&#34;; else if(dnsDomainIs(host, &#34;dev.clyang.net&#34;)) return &#34;127.0.0.1&#34;; else return &#34;PROXY 172.30.100.100:2345&#34;; } 當這個設定檔套用進去瀏覽器的時候, 卻發現只要輸入任何的網址都會導致整個IE卡住(輸入ip即可), 討論一下才發現&#8230;. 原來他的所屬環境特別, 連DNS port都被封鎖, 所以任何的domain name反查都會被reject, 因此只要執行到isInNet, browser就會嘗試去做解析的動作, 因為查詢時候查不到, 又得等到timeout才會有true or false的結果, &#8230; <a href="http://clyang.net/blog/2011/06/01/394">繼續閱讀 <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>今天在<a href="http://skype.com">Skype</a>聊天室中跟一位學弟討論一段<a href="https://calomel.org/proxy_auto_config.html">proxy pac</a>檔:</p>
<pre class="brush: javascript">

function FindProxyForURL(url, host)

{

if(isInNet(host, &quot;172.28.0.0&quot;, &quot;255.255.0.0&quot;))

return &quot;DIRECT&quot;;

else if(dnsDomainIs(host, &quot;stage.clyang.net&quot;))

return &quot;127.0.0.1&quot;;

else if(dnsDomainIs(host, &quot;dev.clyang.net&quot;))

return &quot;127.0.0.1&quot;;

else

return &quot;PROXY 172.30.100.100:2345&quot;;

}
</pre>
<p>當這個設定檔套用進去瀏覽器的時候, 卻發現只要輸入任何的網址都會導致整個IE卡住(輸入ip即可), 討論一下才發現&#8230;.</p>
<p><span id="more-394"></span></p>
<p>原來他的所屬環境特別, 連DNS port都被封鎖, 所以任何的domain name反查都會被reject, 因此只要執行到isInNet, browser就會嘗試去做解析的動作, 因為查詢時候查不到, 又得等到timeout才會有true or false的結果, 所以當一個頁面需要大量做解析的時候, 就會拖垮整個browser的運作.</p>
<p>為了要避免這種狀況, 又得維持本來設定的條件, 最有效率的方式就是將isInNet那行改成:</p>
<pre class="brush: javascript">

shExpMatch(host, &quot;172.28.*&quot;)
</pre>
<p>原因很簡單, 就是將輸入的hostname直接去最字串的比對, 透過這樣來跳過dns解析, 也就解決了這個問題. 真是上了一課 <img src='http://clyang.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><!-- Do not remove -->]]></content:encoded>
			<wfw:commentRss>http://clyang.net/blog/2011/06/01/394/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>正式啓用CloudFlare + 簡單介紹</title>
		<link>http://clyang.net/blog/2011/05/29/378</link>
		<comments>http://clyang.net/blog/2011/05/29/378#comments</comments>
		<pubDate>Sun, 29 May 2011 08:38:51 +0000</pubDate>
		<dc:creator>clyang</dc:creator>
				<category><![CDATA[Cloudflare]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[cdn]]></category>
		<category><![CDATA[cloudflare]]></category>

		<guid isPermaLink="false">http://clyang.net/blog/?p=378</guid>
		<description><![CDATA[去年底出現了一個有趣的網路應用業者CloudFlare, 幾個月內採用的網站劇增, 其實這個網站的概念跟多年前Giga推出的WebAMP相同, 都是提供reverse proxy提供網站加速服務, 但CloudFlare更進一步的為網站擁有者解決了部屬jpg/js/css這類static file到CDN上的問題, 透過部屬在全球各大洲的cache server (詳細列表在此) , 提供高效率的服務. 我從網路上面找到兩張使用前以及使用後的示意圖, 使用前的狀況是: 而使用後是: CloudFlare除了幫忙把網頁的靜態檔案推到他的CDN上面外, 還提供詳細的網站流量報表, 網路攻擊基本的防禦, javascript/css自動minify以及其他許多方便的功能. 同時, 他還很佛心的提供免費方案, 跟pro方案對我而言最大的差別是在免費的只能等到24hr結束才能看到報表, 而pro方案則是每15分鐘就會有一次統計, 除此之外大概就是免費版本不支援ssl的連線, 但是免費的沒辦法要求太多, 所以就將就一下啦 申請的過程就不多加贅述, 唯一要注意的是妳必須把你的nameserver從本來的provider改指到CloudFlare的機器, 他提供很方便的匯入功能, 所以基本上就是到你現在使用的provdier匯出你的zone file後, 然後在CloudFlare的註冊過程中匯入, 此外, 你依舊可以透過CloudFlare提供的dns manager來管理你的domain, 介面設計的很容易上手, 應該不會有使用上的問題. 同時他會幫你多添加一筆"direct.你的domain"的A record, 如果妳本來是使用你的domain &#8230; <a href="http://clyang.net/blog/2011/05/29/378">繼續閱讀 <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>去年底出現了一個有趣的網路應用業者<a href="http://cloudflare.com/">CloudFlare</a>, 幾個月內採用的網站劇增, 其實這個網站的概念跟多年前Giga推出的<a href="http://zh.wikipedia.org/wiki/WebAMP">WebAM</a>P相同, 都是提供reverse proxy提供網站加速服務, 但<a href="http://cloudflare.com/">CloudFlare</a>更進一步的為網站擁有者解決了部屬jpg/js/css這類static file到CDN上的問題, 透過部屬在全球各大洲的cache server (<a href="https://www.cloudflare.com/system-status.html">詳細列表在此</a>) , 提供高效率的服務.</p>
<p>我從網路上面找到兩張使用前以及使用後的示意圖, 使用前的狀況是:</p>
<p><img title="Speed-Up-and-Protect-Your-Blog-with-CloudFlare-01.jpg" src="http://designersdigest.co/wp-content/uploads/2010/11/Speed-Up-and-Protect-Your-Blog-with-CloudFlare-01.jpg" border="0" alt="Speed-Up-and-Protect-Your-Blog-with-CloudFlare-01.jpg" /></p>
<p><span id="more-378"></span>
<p>而使用後是:</p>
<p><img title="Speed-Up-and-Protect-Your-Blog-with-CloudFlare-02.jpg" src="http://designersdigest.co/wp-content/uploads/2010/11/Speed-Up-and-Protect-Your-Blog-with-CloudFlare-02.jpg" border="0" alt="Speed-Up-and-Protect-Your-Blog-with-CloudFlare-02.jpg" /></p>
<p><a href="http://cloudflare.com/">CloudFlare</a>除了幫忙把網頁的靜態檔案推到他的CDN上面外, 還提供詳細的網站流量報表, 網路攻擊基本的防禦, javascript/css自動minify以及其他許多方便的功能. 同時, 他還很佛心的提供免費方案, 跟pro方案對我而言最大的差別是在免費的只能等到24hr結束才能看到報表, 而pro方案則是每15分鐘就會有一次統計, 除此之外大概就是免費版本不支援ssl的連線, 但是免費的沒辦法要求太多, 所以就將就一下啦 <img src='http://clyang.net/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>申請的過程就不多加贅述, 唯一要注意的是妳必須把你的nameserver從本來的provider改指到<a href="http://cloudflare.com/">CloudFlare</a>的機器, 他提供很方便的匯入功能, 所以基本上就是到你現在使用的provdier匯出你的zone file後, 然後在<a href="http://cloudflare.com/">CloudFlare</a>的註冊過程中匯入, 此外, 你依舊可以透過<a href="http://cloudflare.com/">CloudFlare</a>提供的dns manager來管理你的domain, 介面設計的很容易上手, 應該不會有使用上的問題. 同時他會幫你多添加一筆"<strong>direct.你的domain</strong>"的A record, 如果妳本來是使用你的domain name當作主要的website url, 因為這個A record會被改指到<a href="http://cloudflare.com/">CloudFlare</a>的機器上, 所以如果妳直接使用ssh/ftp這類軟體連接會連不上, 所以請改連"<strong>direct.你的domain</strong>" (如果妳不滿意direct, 可以自行更改)</p>
<p>此外, 妳可以隨時決定是不是要透過<a href="http://cloudflare.com/">CloudFlare</a>來serve你的user, 只需要透過<a href="http://cloudflare.com/">CloudFlare</a>的dns manager, 點擊妳不想透過<a href="http://cloudflare.com/">CloudFlare</a>服務的那個名稱右方的雲朵即可切換 (如下圖所示, 橘色為enable)</p>
<p><img title="螢幕快照 2011-05-29 上午8.48.34.png" src="http://clyang.net/blog/wp-content/uploads/2011/05/螢幕快照-2011-05-29-上午8.48.341.png" border="0" alt="螢幕快照 2011 05 29 上午8 48 34" width="1070" height="269" /></p>
<p>如果一切正常, 大概等個10分鐘讓設定生效, 可以隨便在你的站上選個靜態檔案, 透過curl -I測試一下, 如果有看到下列結果就表示成功啦(跑個兩次應該就可以看到HIT):</p>
<p><img title="cloudflare_test.png" src="http://clyang.net/blog/wp-content/uploads/2011/05/cloudflare_test1.png" border="0" alt="Cloudflare test" width="930" height="191" /></p>
<p>測試過後, Hinet會連往日本的機房, 而學術網路則是會連到美西去, 希望可以早日改連到香港或是日本, 減少更多的latency.</p>
<p>接下來就是漂亮的統計報告, 在一堆數據中, 還會告訴你使用<a href="http://cloudflare.com/">CloudFlare</a>後, 他幫你省下多少流量以及整體速度加速了多少, 詳細圖表如下:</p>
<p><img title="cloudflare.png" src="http://clyang.net/blog/wp-content/uploads/2011/05/cloudflare3.png" border="0" alt="Cloudflare" width="900" height="1180" /></p>
<p>當然, <a href="http://cloudflare.com/">CloudFlare</a>不是沒有缺點, 首先因為他其實就是reverse proxy, 所以從server log到上層application所看到的ip都會變成<a href="http://cloudflare.com/">CloudFlare</a>的機器, 如果你有網站機器的權限, 可以使用<a href="http://cloudflare.com/">CloudFlare</a>提供的apache/lighttpd的<a href="http://www.cloudflare.com/wiki/Log_Files">module</a>, 一旦安裝後他就會自動轉換正確的user ip給上層ap. 如果你沒有機器的管理權限, 那可以參考<a href="http://www.cloudflare.com/wiki/Log_Files">這邊</a>是否有列出你所使用的應用軟體套件可以使用 (常見的wordpress,VBulletin都有). 如果你是自行開發網站, 要取得user真實ip其實就是從http header中取出CF-Connecting-IP這個field即可. 第二, 你必須要擁有本來的DNS的控制權, 如果你沒辦法變更nameserver的設定, 那就一切免談啦 <img src='http://clyang.net/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>最後, 幾天使用下來感覺還不錯用, 大家可以申請個免費帳號來玩玩看 <img src='http://clyang.net/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><!-- Do not remove -->]]></content:encoded>
			<wfw:commentRss>http://clyang.net/blog/2011/05/29/378/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>推薦使用tmux &#8211; a &quot;terminal multiplexer&quot;</title>
		<link>http://clyang.net/blog/2009/09/26/356</link>
		<comments>http://clyang.net/blog/2009/09/26/356#comments</comments>
		<pubDate>Fri, 25 Sep 2009 18:11:32 +0000</pubDate>
		<dc:creator>clyang</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[技術]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[screen]]></category>
		<category><![CDATA[tmux]]></category>

		<guid isPermaLink="false">http://clyang.net/blog/?p=356</guid>
		<description><![CDATA[tmux是一個類似常見的GNU Screen軟體，那作者為啥還開發呢，原因單純，他覺得Screen使用的Licence是GNU有些限制，所以就順手寫了一個類似功能但是卻是用BSD Licence，除了Screen常用的功能都有外，tmux還可以在單一一個window中處理多個不同的terminal，如果你常跟我之前一樣需要常常切換在Screen之間去做事情，你一定會愛死tmux的!! 首先，先來談談如何安裝，由於不是每種OS所提供的tmux package都是最新的1.0版，所以我會建議直接抓tarball回來編譯，快又簡單。安裝步驟如下: 下載最新的tmux tarball (目前是tmux-1.0.tar.gz) 解開tarball: tar zxf tmux-1.0.tar.gz 如果你不是FreeBSD uesr請跳過此步驟，編輯configure檔，移除第215行的"#define HAVE_TREE_H" ./configure &#38;&#38; make &#38;&#38; make install 大功告成 如果上述步驟一切順利，理論上就可以順利執行tmux了，但是tmux預設的command prefix是Ctrl+b而非Screen慣用的Ctrl+a，所以我會建議先編輯一份自己專屬的tmux設定檔(vim ~/.tmux.conf)，設定如下: 原始檔在此下載 # Written by clyang _AT_ clyang.net # General Setting set-option -g prefix C-a set-window-option &#8230; <a href="http://clyang.net/blog/2009/09/26/356">繼續閱讀 <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a>是一個類似常見的<a title="GNU Screen" href="http://www.gnu.org/software/screen/" target="_blank">GNU Screen</a>軟體，那作者為啥還開發呢，原因單純，他覺得<a title="GNU Screen" href="http://www.gnu.org/software/screen/" target="_blank">Screen</a>使用的Licence是GNU有些限制，所以就順手寫了一個類似功能但是卻是用BSD Licence，除了<a title="GNU Screen" href="http://www.gnu.org/software/screen/" target="_blank">Screen</a>常用的功能都有外，<a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a>還可以在單一一個window中處理多個不同的terminal，如果你常跟我之前一樣需要常常切換在<a title="GNU Screen" href="http://www.gnu.org/software/screen/" target="_blank">Screen</a>之間去做事情，你一定會愛死<a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a>的!!</p>
<p><span id="more-356"></span>首先，先來談談如何安裝，由於不是每種OS所提供的<a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a> package都是最新的1.0版，所以我會建議直接抓tarball回來編譯，快又簡單。安裝步驟如下:</p>
<ol>
<li>下載最新的<a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a> tarball (目前是tmux-1.0.tar.gz)</li>
<li>解開tarball: tar zxf tmux-1.0.tar.gz</li>
<li>如果你<strong><span style="text-decoration: underline;">不是</span></strong>FreeBSD uesr請<strong><span style="text-decoration: underline;">跳過</span></strong>此步驟，編輯configure檔，移除第215行的<strong>"#define HAVE_TREE_H"</strong></li>
<li>./configure &amp;&amp; make &amp;&amp; make install</li>
<li>大功告成</li>
</ol>
<p>如果上述步驟一切順利，理論上就可以順利執行<a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a>了，但是<a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a>預設的command prefix是Ctrl+b而非<a title="GNU Screen" href="http://www.gnu.org/software/screen/" target="_blank">Screen</a>慣用的Ctrl+a，所以我會建議先編輯一份自己專屬的<a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a>設定檔(vim ~/.tmux.conf)，設定如下: <a title="clyang's tmux.conf" href="http://clyang.net/src/tmux.conf" target="_blank">原始檔在此下載</a></p>
<p style="padding-left: 30px;">
<pre class="brush: bash">
# Written by clyang _AT_ clyang.net
# General Setting
set-option -g prefix C-a
set-window-option -g automatic-rename off

# Statusbar properties.
set -g display-time 3000
set -g status-bg black
set -g status-fg cyan
set -g status-right &quot;#(uptime|awk &#039;{print $11}&#039;) #(date)&quot;

# Fix putty/pietty function key problem
set -g terminal-overrides &quot;xterm*:kf1=\e[11~:kf2=\e[12~:kf3=\e[13~:kf4=\e[14~:kf5=\e[15~:kf6=\e[17~:kf7=\e[18~:kf8=\e[19~&quot;

# Binding key
bind C-a send-prefix
bind s split-window
bind &#039;&quot;&#039; splitw\; selectl main-vertical
bind -n F1 lock
bind -n F2 up-pane
bind -n F3 down-pane
bind -n F9 resizep -U 1
bind -n F10 resizep -D 1
bind -n F11 resizep -L 1
bind -n F12 resizep -R 1

# Tmux lock setting
pass -c &#039;$1$A.n6u0qu$KwXA5FnUfkWJpVLoIY1D30&#039;
</pre>
<p>上述設定檔簡單來說，我把預設的send-prefix從Ctrl+b改成<a title="GNU Screen" href="http://www.gnu.org/software/screen/" target="_blank">Screen</a>習慣使用的Ctrl+a，然後定義一些快速鍵讓做事情更方便，列表如下:</p>
<ul>
<li>Ctrl+a後按 s : 將視窗切為左右兩個區塊</li>
<li>Ctrl+a後按 " : 將視窗切為上下兩個區塊</li>
<li>Ctrl+a後按 c : 產生新的window (跟screen一樣)</li>
<li>Ctrl+a後按 d : 將<a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a> detch到背景 (呼叫回來請使用<a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a> attach，就如同screen -r)</li>
<li>按下F1: 鎖定tmux，會顯示一個大型的數位時鐘，密碼預設在tmux.conf裡面, 請使用<strong><span style="text-decoration: underline;">"openssl passwd -1&#8243;</span></strong>產生，再將該字串填入pass -c後面那一串，<span style="text-decoration: underline;">別忘了前後都要加上單引號 </span><strong><span style="text-decoration: underline;">&#8216; </span></strong><span style="text-decoration: underline;">喔!!</span>當你必須暫時離開座位時，只需要按下F1馬上鎖定tmux</li>
<li>F2移動到單一畫面中的上一個pane</li>
<li>F3移動到單一畫面中的下一個pane</li>
<li>F9將目前這個pane的邊界往上增加一行</li>
<li>F10將目前這個pane的邊界往下增加一行</li>
<li>F11將目前這個pane的邊界往左增加一行</li>
<li>F12將目前這個pane的邊界往右增加一行</li>
</ul>
<p>其他的功能，大家多多摸索吧，建議趕快裝起來自己體驗一下<a title="tmux" href="http://tmux.sourceforge.net/" target="_blank">tmux</a> + 上述快速鍵好用的地方吧!!!</p>
<p><span style="background-color: #ffffff;">最後當然要有圖有真相(畫面左邊跟右邊那三個切割視窗就是稱之為pane，按F2、F3可以在各pane間切換，按F9~F12可以調整每個pane的大小):</span></p>
<p><span style="background-color: #ffffff;"><img class="alignnone size-large wp-image-360" title="tmux" src="http://clyang.net/blog/wp-content/uploads/2009/09/tmux-1024x798.PNG" alt="tmux" width="1024" height="798" /></span></p>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><!-- Do not remove -->]]></content:encoded>
			<wfw:commentRss>http://clyang.net/blog/2009/09/26/356/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>IPod Touch上面開啟StreetView的功能</title>
		<link>http://clyang.net/blog/2009/08/19/352</link>
		<comments>http://clyang.net/blog/2009/08/19/352#comments</comments>
		<pubDate>Wed, 19 Aug 2009 12:53:34 +0000</pubDate>
		<dc:creator>clyang</dc:creator>
				<category><![CDATA[IPod Touch]]></category>
		<category><![CDATA[技術]]></category>
		<category><![CDATA[cydia]]></category>
		<category><![CDATA[google map]]></category>
		<category><![CDATA[street view]]></category>

		<guid isPermaLink="false">http://clyang.net/blog/?p=352</guid>
		<description><![CDATA[Google Map最近開放了台灣地區的Street View功能，無奈IPod Touch 2.2.X的Firmware內建的地圖程式並沒有堤供這項功能，除非花個10塊錢美金升級上去OS 3.0。實在不想因為這個理由就花10塊錢美金，所以就找到免錢的解法啦，只要你的IPod Touch已經JB過了，直接到Cydia裡面搜尋Street View Enabler這個小軟體，就可以開啟你的Street View功能啦!! *** 注意，Firmware版本需要2.2.X *** 最後一定要有圖有真相一下的阿:]]></description>
			<content:encoded><![CDATA[<p><a title="Google Maps" href="http://maps.google.com/" target="_blank">Google Map</a>最近開放了台灣地區的Street View功能，無奈IPod Touch 2.2.X的Firmware內建的地圖程式並沒有堤供這項功能，除非花個10塊錢美金升級上去OS 3.0。實在不想因為這個理由就花10塊錢美金，所以就找到免錢的解法啦，只要你的IPod Touch已經JB過了，直接到Cydia裡面搜尋<strong>Street View Enabler</strong>這個小軟體，就可以開啟你的Street View功能啦!!</p>
<p><strong>*** 注意，Firmware版本需要2.2.X ***</strong></p>
<p>最後一定要有圖有真相一下的阿:</p>
<p><img class="alignnone size-full wp-image-354" title="itouch" src="http://clyang.net/blog/wp-content/uploads/2009/08/itouch.jpg" alt="itouch" width="320" height="480" /><img class="alignnone size-full wp-image-353" title="itouch2" src="http://clyang.net/blog/wp-content/uploads/2009/08/itouch2.jpg" alt="itouch2" width="480" height="320" /></p>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><!-- Do not remove -->]]></content:encoded>
			<wfw:commentRss>http://clyang.net/blog/2009/08/19/352/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>使用PHP將JPG轉換成PDF檔</title>
		<link>http://clyang.net/blog/2009/07/27/344</link>
		<comments>http://clyang.net/blog/2009/07/27/344#comments</comments>
		<pubDate>Mon, 27 Jul 2009 15:23:46 +0000</pubDate>
		<dc:creator>clyang</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[技術]]></category>
		<category><![CDATA[fpdf]]></category>
		<category><![CDATA[jpg2pdf]]></category>

		<guid isPermaLink="false">http://clyang.net/blog/?p=344</guid>
		<description><![CDATA[最近需要將許多個很大張的jpg檔案合併成單一個pdf檔案，實在懶的只為了這個原因就特地安裝任何一套轉換pdf的軟體，外加這些jpg檔其實都放在遠端的機器上面，想到還要抓回來本機端處理就很麻煩，還得浪費自己電腦的運算資源，就在這個想法下，突然想起大四時曾經有使用過fpdf這個PHP的Library，能夠非常方便的製作pdf檔案，不但可以在遠端的機器上面完成所有的事情，還可以善用遠端威猛的運算資源 整理步驟如下: 下載最新的fpdf，並且解壓縮取出fpdf.php 編寫下列程式碼，這邊是原始碼 &#60;? require(&#039;fpdf.php&#039;); $pdf = new FPDF(); $d=dir(&#039;.&#039;); while(($file=$d-&#62;read())!=false) { if(substr($file,-4)!=&#34;.jpg&#34;) continue; $pdf-&#62;AddPage(); $pdf-&#62;Image($file,0,0,220); } $d-&#62;close(); $pdf-&#62;Output(&#34;output.pdf&#34;); ?&#62; 最後產出的output.pdf就是我要的檔案啦! 簡單解說一下，關鍵只有一段$pdf-&#62;Image，後面的引數第一個是要匯入的jpg檔案，第二跟第三個則是代表圖片左上角的定位，最後一個則是設定圖片的寬度，沒有長度的原因是該library會自動調整長度。]]></description>
			<content:encoded><![CDATA[<p>最近需要將許多個很大張的jpg檔案合併成單一個pdf檔案，實在懶的只為了這個原因就特地安裝任何一套轉換pdf的軟體，外加這些jpg檔其實都放在遠端的機器上面，想到還要抓回來本機端處理就很麻煩，還得浪費自己電腦的運算資源，就在這個想法下，突然想起大四時曾經有使用過<a title="fpdf" href="http://www.fpdf.org/" target="_blank">fpdf</a>這個PHP的Library，能夠非常方便的製作pdf檔案，不但可以在遠端的機器上面完成所有的事情，還可以善用遠端威猛的運算資源 <img src='http://clyang.net/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  整理步驟如下:</p>
<ol>
<li><a title="download fpdf" href="http://www.fpdf.org/en/download.php" target="_blank">下載最新的fpdf</a>，並且解壓縮取出fpdf.php</li>
<li>編寫下列程式碼，<a title="convert php" href="http://clyang.net/src/convert.phps" target="_blank">這邊是原始碼</a></li>
</ol>
<p style="padding-left: 30px;">
<pre class="brush: php">
&lt;?
 require(&#039;fpdf.php&#039;);
 $pdf = new FPDF();

 $d=dir(&#039;.&#039;);
 while(($file=$d-&gt;read())!=false)
 {
  if(substr($file,-4)!=&quot;.jpg&quot;) continue;
  $pdf-&gt;AddPage();
  $pdf-&gt;Image($file,0,0,220);
 }
 $d-&gt;close();
 $pdf-&gt;Output(&quot;output.pdf&quot;);
?&gt;
</pre>
<p>最後產出的output.pdf就是我要的檔案啦!</p>
<p>簡單解說一下，關鍵只有一段$pdf-&gt;Image，後面的引數第一個是要匯入的jpg檔案，第二跟第三個則是代表圖片左上角的定位，最後一個則是設定圖片的寬度，沒有長度的原因是該library會自動調整長度。</p>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><!-- Do not remove -->]]></content:encoded>
			<wfw:commentRss>http://clyang.net/blog/2009/07/27/344/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>放上新的Favicon :D</title>
		<link>http://clyang.net/blog/2009/07/04/341</link>
		<comments>http://clyang.net/blog/2009/07/04/341#comments</comments>
		<pubDate>Sat, 04 Jul 2009 06:10:00 +0000</pubDate>
		<dc:creator>clyang</dc:creator>
				<category><![CDATA[技術]]></category>
		<category><![CDATA[favicon]]></category>

		<guid isPermaLink="false">http://clyang.net/blog/?p=341</guid>
		<description><![CDATA[這個Blog啟用也有半年了，一直都沒有放上favicon，原因有二，一是我實在很懶惰去找，另一個原因則是一直找不到一個合適的圖案，總算在前幾天看到一個完全適合本blog的favicon，所以就幹下來使用了，不知道有沒有人發現呢? XD 有圖有真相:]]></description>
			<content:encoded><![CDATA[<p>這個Blog啟用也有半年了，一直都沒有放上favicon，原因有二，一是我實在很懶惰去找，另一個原因則是一直找不到一個合適的圖案，總算在前幾天看到一個完全適合本blog的favicon，所以就幹下來使用了，不知道有沒有人發現呢? XD</p>
<p>有圖有真相:</p>
<p><img class="alignnone size-full wp-image-342" title="new_favicon" src="http://clyang.net/blog/wp-content/uploads/2009/07/new_favicon.JPG" alt="new_favicon" width="693" height="102" /></p>
<div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script><!-- Do not remove -->]]></content:encoded>
			<wfw:commentRss>http://clyang.net/blog/2009/07/04/341/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

