Quantcast
Channel: WFU BLOG
Viewing all articles
Browse latest Browse all 784

如何讓大陸讀者能看到 Blogger 網頁及 Picasa 圖片

$
0
0
自從 Google 被大陸封鎖之後,旗下產品也概括承受相同的命運,例如 Blogger 網域無法被大陸讀者拜訪、Google+ 相關功能(專頁或社群)無法使用、Picasa 圖片看不到等等。

除了從大陸自主性地突破封鎖一途外,在技術上而言,我們是有方法可以跳過封鎖,來讓相關頁面內容被大陸讀取。不過這個主題太過龐大,會另闢專文說明。而本文先針對基本需求,讓 Blogger 網域、及PICASA 圖床的讀取,提供可行的對策供參考



一、準備動作──讓 Blogger 不被封鎖


如前所述,Blogger 所有頁面內容要正常顯示的話,要克服的關卡太多,將會個別討論。目前能做的,算是「先求有,再求好」,先讓網址能讀出來、文章能顯示、文章的圖片能看得到,這是最重要的,之後再來一一解決各個區塊、小工具、頁面效果,讓其他部分能正常顯示。


1. 申請獨立網址

由於 Google 的相關網域都被大陸封鎖,因此突破封鎖的原理也很容易理解,就是避開 Google 相關網域。申請獨立網址後,自然能避開 blogspot.com這個被大陸封鎖的網域,而被大陸讀者拜訪。


2. 避免申請免費網域

不少站長為了省錢,會申請免費的獨立網址。WFU 建議不要這麼做,可試著思考以下這幾點:
  • 免費的服務因為賺不到錢,那麼究竟這個服務能提供多久?其主機是否能保證穩定
  • 免費網域多半會被大陸封鎖,而若能找到不被封鎖的免費網域,該網域又能撐多久不被大陸封鎖
  • 申請獨立網址後必然要宣傳新網址,將來這個免費的網域被大陸封鎖後,是不是又要找新的網域,重新再跟你的讀者宣傳一次

申請個人網址跟結婚很類似,建議當成是一輩子的事來考量,沒有人喜歡重複地宣告「我又換網址了」,每次換網址都是一件大工程。因此做決定之前花多久的時間考慮,相信都是值得的。


3. 免費的其他管道

如果申請網域的主要原因是 "為了大陸市場",而非 "建立個人品牌",那麼其實不一定要經由「申請網域」這個管道,自然也不一定要花錢。

沒被大陸封鎖的平台很多,所以不一定要花錢買網域,可以選擇 tumblr,或是大陸當地的 blog 來發表文章,自然不會被封鎖。很多部落客都是這麼做的,利用一些社群工具,將一篇文章同時貼到經營的各個部落格平台,一樣可以顧到大陸市場,不過這就跟本文主旨無關了。






二、讓 PICASA 圖片不被封鎖的原理


Blogger 申請完獨立網址後,我們就可以來談下個難題,如何讓 PICASA 圖床不被封鎖。

這件事能開始有點頭緒,最早起源於這個「Blogger中文社群討論串」。上傳到 Blogger 的圖片網址,是在 blogspot.com這個網域,因此會被大陸封鎖。

如果我們將網域更名為 googleusercontent.com的話,由於這個網域未被大陸封鎖,那麼圖片自然能在大陸顯示了。

順帶一提,Blogger 的圖片想不被大陸封鎖,還可使用 flickr 或其他圖床,但 WFU 個人認為「為了大陸市場而改用 flickr」算是弊大於利,既然身處 Blogger 平台,那麼還是用自家的圖床,在各方面的配合度才是最好,請參考這篇「使用 PICASA 的三大好處」。



三、讓 PICASA 圖片不被封鎖的最佳作法


此為 +Bin Ye 的重大發現,根據這篇「Blogspot 圖片可通過 HTTPS 引出」,只要將圖片網址的通訊協定由 http改為 https,就能突破大陸的封鎖。

同樣藉由該篇文章的舉例,原本讓 PICASA 圖片不被封鎖的作法,是要將這樣的圖片網址──
  • http://4.bp.blogspot.com/-KgGfmUJSRtA/UAkK5JDMuUI/AAAAAAAADVc/E8MULVT-lQc/s1600/millionaire.jpg

必須改成──
  • http://lh4.googleusercontent.com/-KgGfmUJSRtA/UAkK5JDMuUI/AAAAAAAADVc/E8MULVT-lQc/s1600/millionaire.jpg

而現在網址只需要多個 "s",就能搞定這件事──
  • https://4.bp.blogspot.com/-KgGfmUJSRtA/UAkK5JDMuUI/AAAAAAAADVc/E8MULVT-lQc/s1600/millionaire.jpg

好了,到此講完所有理論上該懂的基本知識,接下來是實作,如何將網站所有圖片網址的字串進行更改,同樣不是一件簡單的事。



四、批次更改 PICASA 圖片網址


這是一件大工程,影響層面很大,也許沒幾個站長想嘗試。可參考這篇「解決 Blogger 匯入文章時 "繼續閱讀" 出錯的問題」的原理,必須先將網誌所有文章匯出,再使用文書處理軟體,批次修改圖片網址字串,再匯回網誌。且很嚴重的一點,一天只能匯入 50 篇文章(超過需要打驗證碼)這件事先不提,光是所有後台文章的計數器會歸零,這件事大概九成的站長都會望之卻步了。

如果有毅力且不怕數據歸零的讀者,那麼可參考以下的字串置換方式。

2014.3.25 增補

根據這個「Blogger中文社群討論串」, +綜合口味的測試結果,修改圖片網址後,會影響官方 "熱門文章" 小工具的縮圖顯示。經檢視 feed 資料後,發現文章將無法產生縮圖,導致讀取縮圖的動作會失效。因此如果部落格有使用讀取縮圖的任何小工具,建議採用「五、更改 PICASA 圖片網址的簡易方式」的方法。


1. 原本的圖片網址字串

大致測試了一些圖片網址,歸納後總結出 PICASA 會將圖片分散到四種網域:
  • http://1.bp.blogspot.com
  • http://2.bp.blogspot.com
  • http://3.bp.blogspot.com
  • http://4.bp.blogspot.com

所以這是我們要置換的原始字串,意思就是要做四次的置換字串動作。


2. 置換後的圖片網址字串

請將以上四組字串,置換為以下字串:
  • https://1.bp.blogspot.com
  • https://2.bp.blogspot.com
  • https://3.bp.blogspot.com
  • https://4.bp.blogspot.com

之後再進行匯入網誌的後續動作就行了。


3. 置換範本的圖片網址字串

除了以上的動作,也別忘了處理範本或小工具裡面的圖片。如果範本中或小工具的圖片,也是使用 PICASA 圖床,那麼同樣依照以上流程來置換網址字串即可



五、更改 PICASA 圖片網址的簡易方式


害怕文章數據歸零的讀者,可以使用這個偷吃步的方法,利用 js 來動態處理圖片網址字串,稍微耗費一點點的系統資源與處理時間,不過處理流程相較之下算是非常簡易(原理請參考這篇「Blogger 能否一次修改多篇文章的文字或內容?」)。

1. 沒有安裝 Lazy Load 的情況

在範本中搜尋 data:post.jumpText這樣的字串,應該會看到以下這段程式碼:

<b:if cond='data:post.hasJumpLink'>
<div class='jump-link'>
<a expr:href='data:post.url + "#more"' expr:title='data:post.title'><data:post.jumpText/></a>
</div>
</b:if>


接在這一整段程式碼後面,插入以下程式碼:

<!-- 置換 PICASA 圖片網址 start -->
<script>
//<![CDATA[
(function () {
var img = document.getElementsByTagName("img"),
l = img.length,
i, s;
for (i = 0; i < l; i++) {
s = img[i].src;
if (s.search("https:") > -1) {continue;}
s = s.replace("http", "https");
img[i].src = s;
}
} )();
//]]>
</script>
<!-- 置換 PICASA 圖片網址 end, code by WFU BLOG -->

存檔後即可生效。

2014.3.25 增補

+Pan Kuan測試,圖片很多的文章,會花費一些處理時間。因此建議圖片多的部落格,請按「圖片延遲載入外掛 Lazy Load__Blogger 最佳安裝方式」先安裝 Lazy Load,再參考下一點的操作。


2. 有安裝 Lazy Load 的情況

如果曾依照過這篇「圖片延遲載入外掛 Lazy Load__Blogger 最佳安裝方式」來安裝 Lazy Load 的話,那麼請對照該篇文章 →「四、最佳安裝方式」→ 第 3 點,將以上「1. 沒有安裝 Lazy Load 的情況」的程式碼,放在 "繼續閱讀" 與 "Lazy Load" 程式碼之間即可



六、測試網址是否被封鎖的線上服務


怎麼知道本文的方法到底有沒有效果呢?畢竟我們不在大陸,請大陸讀者幫忙測試也不是很方便。其實有很多線上服務可以代勞,例如下面這個網頁:



以本文的封面圖為例,上圖的網址為:
  • http://3.bp.blogspot.com/-KRXUmFM18RQ/UyxCIaPv16I/AAAAAAAAJC4/gM6TTwCOJ8g/s1600/china-blogger-picasa-not-block.jpg


1. 被封鎖的範例

利用上面的測試網頁,輸入上圖原始網址後,可看到結果如下:



畫面上出現失敗的訊息,"http" 開頭的網址被大陸封鎖。


2. 突破封鎖的範例

將網址改為以下:

  • https://3.bp.blogspot.com/-KRXUmFM18RQ/UyxCIaPv16I/AAAAAAAAJC4/gM6TTwCOJ8g/s1600/china-blogger-picasa-not-block.jpg

利用測試網頁,輸入新的網址後,可看到結果如下:



畫面上出現成功的訊息,"https" 開頭的網址未被大陸封鎖。


+Bin Ye 發現的方法確實有效,因此自認部落格內容適合開發大陸讀者的 Blogger 站長們,是時候開始著手進行相關動作了。

Viewing all articles
Browse latest Browse all 784

Trending Articles