升級 wordpress 到 3.5,Update network 出現 SSL certificate problem

升級 3.5 以後,要 Update network,卻發現下面這個錯誤。

Warning! Problem upgrading http://domain.tld/blogs/blogname/. Your server may not be able to connect to blogs running on it.
Error message: SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed

是沒錯,因為是自家用的網站,CA cert 是自己簽發的,會有驗證有問題的情況是正常。但為什麼之前都沒有這問題,怪。總之,後來查了好一會,知道應該是跟 sslverify 有關係,就找到 wp-admin/network/upgrade.php 裡呼叫 wp_remote_get 的地方,為第二個參數加上 sslverify => false 就可以了。
[php]$response = wp_remote_get( $upgrade_url, array( ‘timeout’ => 120, ‘httpversion’ => ‘1.1’, ‘sslverify’ => false ) )[/php]

參考資料:

git-cola win32 安裝指南

git-cola 在 github 上的網頁寫的算是清楚,就是先裝 msysgitpythonpyqt 以後(pyqt 的話要看 python 版本來下載對應的安裝檔),最後再下載 git-cola installer 進行安裝就可以。

安裝 git-cola 的時候,會問你 pythonw 的路徑,這個就看你是安裝 python 2.6 還 python 2.7,一般就是在 c:\python26 或 c:\python27 下;接著會問你 git 所在的路徑,我這邊踩到雷,傻傻的選了 C:\Program Files\Git\bin\git.exe ,然後就安裝完成了。

安裝完成以後,程式可以執行,但是在進行 push/pull 時,卻發生卡住的情況。我在想這應該是 git 的問題,因為把程式都關閉以後,用「工作管理員」打開看,git.exe 還在執行。我在猜想應該是有些環境變數沒有設定到,導致 SSH 有問題而造成 git push/pull 失敗。接著我就試著去找設定 C:\Program Files\Git\bin\git.exe 的地方,找了好一陣子,才找到原來安裝程式在問完 git 路徑以後,直接把這個設定寫在 git-cola/git-dag 的捷徑裡,所以就右鍵點擊捷徑以後,選「內容」去修改為 C:\Program Files\Git\cmd\git.cmd 這個 msysgit 提供的,有設置環境變數的批次腳本檔即可。

Miro 的 Proxy 設定

Miro 是個好東西,但是很不幸,公司的網路政策不允許下載串流影音檔案,也就沒辦法在 Miro 裡搜索。官方的說法也很妙,就是叫你開控制台的網際網路設定去改 proxy。既然官方說法這麼無奈,只好自力救濟。

印象中,Miro 好像是用 xulrunner,但不很確定,就打開安裝所在的資料夾來看,有看到 etc 資料夾,裡面有個 gtk-2.0,喔~這是用 GTK 寫的;等等,看到 xulrunner 資料夾了,再去看裡面,有個 greprefs.js ,打開看看,賓果,是設定檔。於是就找了 network.proxy,改了下面幾個設定:

  • network.proxy.type 改為 1:依照 Mozilla 的說明,1 表示手動指定 proxy,原來的值是 5,表示使用系統預設值。
  • network.proxy.http / network.proxy.http_port :改為指定的 proxy 與 proxy port。
  • network.proxy.ssl / network.proxy.ssl_port :這是 SSL 的,一樣改成指定的 proxy 與 proxy port

這樣就大功告成了,突破!!

批次改 wordpress 文章可見度為 Private (私有)

有在用 SEO 的話,這功能應該是用不到,剛好有用到,就研究了一下。

一開始是想,有 plugin 可以做到這件事情,所以就找 plugin 看看。先找到 PrivatePostDefault,這可以把預設發文的可見度改為私有,但沒找到可以批次修改的 plugin。胡亂找了半天,終於發現我是白痴,原來早就有這功能,只是不知道怎麼用。先選到 All posts,然後選右上角的 screen options,設一頁可顯示的筆數,這時候是愈多愈好。保存以後,選 Public,勾選所有文章,在 Bulk action 的地方,改選 Edit,然後按下 Apply,再把 Status 改為 Private 即可。打完收工。

scraperwiki

scraperwiki.com 是一個可以讓你寫網路爬蟲程式的網站,在網站上寫,立刻就能執行並看到結果。語言的話可以用 PHP/Python/Ruby 這三種程式語言,而資料是儲存到 sqlite3 資料庫裡。

vim調整split後的區域大小

按下 ctrl+w s 與 ctrl+w v 以後分割出來的區域,vim 裡是叫作 window,所以用 google 去找 vim split window size 就可以找到說明。

要調整 window 的方法,也是要先按下 ctrl+w:

  • ctrl+w +、ctrl+w -:先按下 ctrl+w 再按下加號或減號,是增加或減少列數,也就是調整上下分割時用的。
  • ctrl+w >、ctrl+w <:先按下 ctrl+w 再按下大於或小於符號,是左右分隔線向右或向左的意思,主要是調整左右分割實用的。

以前就很想知道這功能了,其實早就應該去查了,這樣才會記的住,才不會老是在想說該怎麼弄。

vim 凸顯游標所在列

因為要對 log,所以有此需求,印象中vim 可以做到,但不知道指令。

後來 google 了一下,找到是 cursorline,輸入 :set cursorline! ,游標所在列就會出現光棒或是有底線 (視 vim 所在環境而定)。有游標列,就有游標行,:set corsorcolumn! 就是了。

 

jsdx-toolkit的安裝

安裝碰到的問題,安裝時會要編譯,所以需要安裝必要的開發套件,其實也就3個:libclutter-1.0-dev、libmx-dev、libclutter-gst-dev,然後再安裝 jsdx-toolkit 即可:npm install jsdx-toolkit

奇怪的是我執行了兩次 npm install jsdx-toolkit 才成功。

FreeBSD 9 小記

上次裝 FreeBSD,是在 FreeBSD 4 的時候,換言之,已經是差不多快十年前的事情了。

首先當然是下載光碟,我下載了 DVD 版本,下載完畢,就用來開機。開機以後,安裝步驟出乎意料的簡單,問了鍵盤配置、網路、磁碟等等,不超過五個問題,就開始安裝。安裝完以後,就可以開機進去了。

進去以後,想要裝一些趁手的軟體,安裝是使用 pkg_add。pkg_add 預設是使用 FTP 去下載軟體來安裝,因為公司網路對 FTP 的封包非常不友善,於是要改為 HTTP,這裡要用 setenv PACKAGESITE http://ftp.tw.freebsd.org/pub/FreeBSD/ports/i386/packages-9.0-release/Latest/ 把預定要下載的網站改為台灣的伺服器,同時也將 ftp:// 改為 http:// ,這樣就好多了。

目前就先裝了 vim 跟 kde4,晚點再來試試用 ports 自己編譯。

calibre-haodoosearch 為 Calibre 增加搜索好讀網站並下載的功能

昨天在用 Calibre 時,突然想到如果可以直接在 Calibre 裡直接做搜索與下載的動作不是很好嗎?原本是先去好讀網站上搜索,然後下載到某個資料夾以後,再放到 Calibre 裡,這樣的動作很繁瑣。

有起了念,就趕緊去找,之前是看過幾次寫 Calibre plugin 的文,但這次是增加對書籍的搜索,不知道是不是可以寫這樣的 Plugin。在 Calibre 的源碼裡翻找了一下,大致知道這樣是要寫個 Store,所以就用 Calibre store plugin 去搜索,就找到 Store plugin 的討論串。這個討論串裡面正好有提供框架,就直接拿來改了。今天改了一上午,就改的差不多了,源碼放在 github 上 。有需要的人就自行取用,使用上有一天一百次的限制,這是 Google APIs 的限制,你可以試著申請 developer key,然後把 haodoo.py 裡的 key 改掉,就可以自己擁有一天 100 次 query 的限額。

順便記錄一下幾個心得:

  • 可以直接用 print() 印訊息,然後搭配 calibre-debug 就可以看到輸出。
  • 在設定 actual_plugin 時,搞了好久,然後才發現是自己忽略了框架plugin裡的 .txt 檔案。這個檔案名稱決定了 actual_plugin 屬性該怎麼寫。
  • 實驗結果,Calibre 從 UI 傳下來的字串是 utf-8,然後直接宣告字串變數的話,該字串變數則是 unicode 。
  • 最好不要使用 Calibre 裡面沒包的 library,要不然會很麻煩。我本來是打算用 Google API client library 來執行 custom search,但是後來發現有太多依存關係,就放棄了。
  • 有些字串在印完會丟出例外,我後來乾脆都用 try except 包起來,要不然會沒辦法繼續執行/除錯。
  • 可以自己寫批次檔來做快速佈署的工作,這在 Writing your own plugins to extend calibre‘s functionality 有介紹,會省掉很多工夫。主要就是 calibre-customize 這指令,當這樣用時 calibre-customize -b /your_plugin/ ,會自動幫你把 your_plugin 壓縮成 your_plugin.zip ,並且放到 Calibre 的 plugins 目錄 (Windows 上是在 $USERPROFILE\Application Data\calibre\plugins )。