2013年10月20日 星期日

使用PhpConsole Debug

使用PhpConsole可以直接在Browser的console上
如同對JavaScript做 debug資訊顯示

一.安裝
1.安裝PhpConsole 的 Chrome Extension
https://chrome.google.com/webstore/detail/nfhmhhlpfleoednkpnnnkolmclajemef
2.下載PhpConsole Class
http://code.google.com/p/php-console/downloads
在web server自己找地方放(例如放在includes目錄下)

二.使用
require_once '../includes/PhpConsole.php';
PhpConsole::start();
$data = 'hello debug';
debug($data);

三.注意
debug接的值為string
若$data為array or object
要用
debug(var_export($data,TRUE));

2013年10月15日 星期二

由Bitbucket deploy到Linode

當你將程式碼放到bitbucket或github上
要做source code deply除了可以透過CI來做自動deploy的工作
也可以利用git上所提供的git功能來做自動deploy
其原理很簡單
就是在你的server上也clone一份你的repos資料
當有人做commit push時,Server上的repos會自動pull最新的回來
就達到自動deploy的工作
以下是需要的工作

1.Server需要安裝git環境
因為是需要透過git pull去把code拉到Server上,會需要安裝git環境
ubuntu:
sudo apt-get install git-core
opensuse:
sudo zypper install git-core

2.建立Web 可以操作的 SSH Key
通常產生ssh key都會是建立在使用者的自己所在的
.ssh目錄下,
但因為要執行git command會是經由web page進來的
所以所建立的ssh key必須是要以web user的身分所建立
apache server進來的web user身分
ubuntu:www-data
sudo -u www-data ssh-keygen -t rsa
opensuse:wwwrun
sudo -u wwwrun ssh-keygen -t rsa
產生的key
ubuntu是在
/var/www/.ssh/
opensuse是在
/var/lib/wwwrun/.ssh下

3.設定Deploy Key
在Bitbucket上的repos設定
在Deploy key加上產生的key pub
使用Deploy Key 只能pull不能push

4.clone repos到server上
要clone repos到server上,先將使用者身分切換到web user
所clone下來的東西擁有者就會是web user,就可以允許透過
web page操作這些資料
ubuntu:
su www-data
git clone xxx

opensuse:
sudo -u wwwrun -s
git clone xxxx

5.寫git pull script
可以用一個script放到server上
例以下是以php寫的sample
http://brandonsummers.name/blog/2012/02/10/using-bitbucket-for-automated-deployments/

6.設定hook
到bitbucket上,設定加入一個POST Hook
只到上面所寫的script路徑即可

2013年10月10日 星期四

屏東

上禮拜 到台中開會 結束後
也順道回家一趟
平常日的客運票價 遠低於高鐵
在沒有時間壓力下 其實還蠻好的
中正交流道 下車
就直接走路回家

騎車去屏東
難得享受 台北生活所沒有的自在
一路上 隨走隨停
終點 是老媽煮好了飯在等著我
萬巒豬腳街就是這裡



萬巒先帝廟

萬金聖母教堂