在 Google App Engine 中,如果要讓 App Engine 支援 HTTPS 連線,必須要到 Google Apps 的 Admin Panel 裏面設定你的 PEM encoded X.509 certificate 和 Unencrypted PEM encoded RSA private key
大概長得像上面這樣,上面那個通常是直接傳網域代管商交給你的 .crt 檔案,下面則是傳你自己做好的的 Private Key(不過還需要用 PEM 來 encode),總之,這個步驟本來是相當簡單的。
不過在 App Engine 中,因爲 Google 沒有讓你上傳 Intermediate Certificate 的地方,所以要用一個特殊的 Workaround 來解決。否則,在對 HTTPS Certification 要求比較嚴格的環境中,像是 Firefox 或是網域代管商的 Verifier,都會顯示你的網站是有 SSL 加密但是是「不可信任的(Untrusted)」。
Mr.Q 程式手札
Linux, Python, Erlang, JavaScript, Geek ( Blog 以轉移至 http://littleq.logdown.com/)
2013年10月1日 星期二
2013年9月14日 星期六
讓 Vim 跟與你的系統剪貼簿 (clipboard) 共舞
我先承認標題有點太誇張了,但因爲我的內容很短所以只好取個炫一點的標題 XD
這篇主要講如何讓你的 vim 的「d, y, dd, yy...」之類的複製貼上 command 跟系統剪貼簿綁在一起,尤其像我這種會 set mouse=a 的人,每次都要取消 set mouse 再來選取複製很麻煩的人。
2013年5月28日 星期二
一人多信,反台灣版 SOPA 法案(附 IFFFT 連結)
too long; lazy to write
相信大家都已經知道這件事情了,個人希望能把討論化成行動。
這邊提供一個 Link 可以一次發信給所有智財局所有意見信箱。
信件內容讓大家自由發揮,我不是智財局,不懂怎麼控制大家的言論。不過大家如果不知道要寫什麼,可以去複製一下其他部落格的文章,寄給他們。
建議不要附上出處 link,以免智財局又要封鎖網頁。
有什麼不錯的信件範本可以在下方留言提供,我會把它放上來
補充:
有人做了這個 IFFFT 配方,可以讓你自動每天寄信到智財局
2013年1月24日 星期四
在 Linux 底下上 PTT 的指令
這個我用好久了,今天突然想到分享出來給大家 XD
大家其實都知道上 ptt 只是 telnet ptt.cc 但是會有編碼的問題,所以就要用 luit 來轉換
完整指令:luit -encoding big5 telnet ptt.cc
ssh 版:luit -encoding big5 ssh bbs@ptt.cc
大家其實都知道上 ptt 只是 telnet ptt.cc 但是會有編碼的問題,所以就要用 luit 來轉換
完整指令:luit -encoding big5 telnet ptt.cc
ssh 版:luit -encoding big5 ssh bbs@ptt.cc
2012年11月15日 星期四
Linux Container (lxc) - 物美價廉的 Virtualization
今天因爲工作的需要又裝了一次 Container,沒想到在 Ubuntu 下面裝 Container 已經變得如此簡單,所以趁着記憶新鮮的時候講 Setup 的步驟記錄下來,希望可以讓更多人用到這們好的東西。
在這之前先講講 Container 是什麼東西,簡單來講,我們常常透過 Virtual Machine 來當做測試、開發用的 「沙盒(Sandbox)」,目的就是爲了不要污染原本電腦中的環境,也保持環境的乾淨度以利測試或開發進行,但是 Virtual Machine 耗費的資源過於龐大,一下就得佔走一顆 CPU 和一定數量的 Memory,唯一的好處就是可以裝不一樣的作業系統,但要是不需要不一樣的作業系統的時候呢?這時候我們就可以用 Container 啦,而 LXC 就是在 Linux 底下可以方便使用這個機制的一套工具!
Container 是基於 chroot 的概念出發的機制,由於 Linux 系統底下「萬物皆檔案」,所以只要能把檔案系統分開來,看起來就是另外一臺不一樣的電腦啦!
Container 的 Wikipedia: http://en.wikipedia.org/wiki/Operating_system-level_virtualization
接下來來講講如何 Setup 吧!
雖然講的是 Ubuntu,但是由與筆者的電腦是 Linux Mint(骨子還是 Ubuntu 的另外一套 Linux distro),所以中間步驟會有一點差異,但是差異不大,大概就是沒差異啦。
(1) 安裝 lxc
首先,透過 apt-get 安裝 lxc,
透過 apt 安裝有一個好處,就是網路介面、cgroup 等等東西都不用自己設定,裝好的時候就幫你建立好了,ifconfig 裏面可以發現多了橋接介面,用於連接 lxc containers 的網路。
(2) 建立 Container
和 Virtual Machine 一樣,在開始使用之前要先建立 VM,所以我們也要開始創建一個 Container,透過 lxc-create 這個指令就可以馬上建立一個全新的 Container
這時候 lxc 就會跳出一堆 blahblah,幫你建立了,如果你之前沒有幫 root 建立 public key,他會在過程中詢問且建立一個。
第一次建立 Container 會久一點,因爲他要從網路上抓全新的 ubuntu 環境下來,大約 400 MB 左右,不過之後就可以省掉這個步驟了,大概 20 秒就可以開好一個。
建立完後可以用 lxc-list 看到 Containers 的狀態。
RUNNING
lxc-lab
FROZEN
STOPPED
ejcluster1
(3) 運行建立好的 Container
-n: container name
-d: run as daemon
這個指令會運行已經建立好的 Container 然後放到背景運行,強烈建議一定要加上 -d 選項,之後再用 lxc-console 指令或 ssh 連進去就好。
(4) 連入運行中的 Container
記著:離開的指令是 <Ctrl-a> 然後按 <q>。
預設的帳號密碼應該都是 ubuntu。
(5) 關閉運行中的 Container
這樣就可以把不用的 Container 關起來。
在這之前先講講 Container 是什麼東西,簡單來講,我們常常透過 Virtual Machine 來當做測試、開發用的 「沙盒(Sandbox)」,目的就是爲了不要污染原本電腦中的環境,也保持環境的乾淨度以利測試或開發進行,但是 Virtual Machine 耗費的資源過於龐大,一下就得佔走一顆 CPU 和一定數量的 Memory,唯一的好處就是可以裝不一樣的作業系統,但要是不需要不一樣的作業系統的時候呢?這時候我們就可以用 Container 啦,而 LXC 就是在 Linux 底下可以方便使用這個機制的一套工具!
Container 是基於 chroot 的概念出發的機制,由於 Linux 系統底下「萬物皆檔案」,所以只要能把檔案系統分開來,看起來就是另外一臺不一樣的電腦啦!
Container 的 Wikipedia: http://en.wikipedia.org/wiki/Operating_system-level_virtualization
接下來來講講如何 Setup 吧!
雖然講的是 Ubuntu,但是由與筆者的電腦是 Linux Mint(骨子還是 Ubuntu 的另外一套 Linux distro),所以中間步驟會有一點差異,但是差異不大,大概就是沒差異啦。
(1) 安裝 lxc
首先,透過 apt-get 安裝 lxc,
sudo apt-get install lxc
透過 apt 安裝有一個好處,就是網路介面、cgroup 等等東西都不用自己設定,裝好的時候就幫你建立好了,ifconfig 裏面可以發現多了橋接介面,用於連接 lxc containers 的網路。
(2) 建立 Container
和 Virtual Machine 一樣,在開始使用之前要先建立 VM,所以我們也要開始創建一個 Container,透過 lxc-create 這個指令就可以馬上建立一個全新的 Container
lxc-create -t ubuntu -n test-1
- -t: template
- -n: container name(這裏 test-1 可以代換成你想要的名字)
這時候 lxc 就會跳出一堆 blahblah,幫你建立了,如果你之前沒有幫 root 建立 public key,他會在過程中詢問且建立一個。
第一次建立 Container 會久一點,因爲他要從網路上抓全新的 ubuntu 環境下來,大約 400 MB 左右,不過之後就可以省掉這個步驟了,大概 20 秒就可以開好一個。
建立完後可以用 lxc-list 看到 Containers 的狀態。
RUNNING
lxc-lab
FROZEN
STOPPED
ejcluster1
(3) 運行建立好的 Container
lxc-start -n test-1 -d
-n: container name
-d: run as daemon
這個指令會運行已經建立好的 Container 然後放到背景運行,強烈建議一定要加上 -d 選項,之後再用 lxc-console 指令或 ssh 連進去就好。
(4) 連入運行中的 Container
lxc-console -n test-1
記著:離開的指令是 <Ctrl-a> 然後按 <q>。
預設的帳號密碼應該都是 ubuntu。
(5) 關閉運行中的 Container
lxc-stop -n test-1
這樣就可以把不用的 Container 關起來。
2012年11月7日 星期三
Linux Mint 13 的臺灣鏡像站菜單
有鑑於每次都要改 /etc/apt/source.list 很麻煩,所以我做了一份 for Linux Mint 13 的 Mirrors 菜單請大家品嚐(順便備份),如果有推薦的菜色也可以在下面留言或寄信給我,我再把它加進去。
2012年11月5日 星期一
解決 Mac OS X 無法儲存密碼的問題
升級到 Mountain Lion 之後,開始遇到一個問題:每個需要登入的程式一旦重開,就會要我再登入一次,就算勾選了「Remember Me」或是「Automatically login at next time」都沒有用。
我的 Mountain Lion 是 Clean install 的,爲什麼遇到這個問題我也不懂,可能是我同時有兩個 Mac OS X 並存的關係。
我的 Mountain Lion 是 Clean install 的,爲什麼遇到這個問題我也不懂,可能是我同時有兩個 Mac OS X 並存的關係。
訂閱:
文章 (Atom)