這是今年第二次開花吧...
上次開剛好沒看到...這次要照起來
相簿: http://picasaweb.google.com/josh0821/cNvTII
曇花 |
這次開了三朵...還有一朵還沒開..
還不錯漂亮 ... 雖然照相技術不好 XD
Josh的閒言閒語
曇花 |
Gmail常有人抱怨安全性不佳 被盜帳號等問題
因此google推出 tracking open sessions的功能
來找出所有連到你gmail的所有連線
或許能提前找出一些安全漏洞...
所紀錄的資訊有 連線方式 IP 跟時間
像是無論使用pop3 網頁 還是手機登入 都會被記錄下來
如果有遠端連線忘記登出 還可以遠端進行登出的動作
來避免一些安全上的顧慮
參考資料 Find Who Has Access to Your Gmail Account
<script src='' type='text/javascript' />
<a href="javascript:Decrypt_text('獨一無二的標籤名稱');">文章保護 請輸入密碼</a>
<div id="獨一無二的標籤名稱">密文</div>
<a href="javascript:Decrypt_text('獨一無二的標籤名稱', '密文');">文章保護 請輸入密碼</a>
<div id="獨一無二的標籤名稱"></div>
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<allow-access-from domain="*" />
<allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>
hg serve
[collections]
/prefix/to/strip/off = /root/of/tree/full/of/repos
[paths]
virtual/path = /real/path
virtual/path = /real/path
hg -v help serve
ssh://user@host:port/path
ssh://josh@host:port//var/hgroot/proj1/
ssh://josh@host:port/../hg
ssh = "C:\path\TortoisePlink.exe" -ssh -2 -i "D:\path\key"
ScriptAliasMatch ^/mercurial(.*) /path/to/web/hgwebdir.cgi$1
<Location /mercurial>
Allow from all
Options ExecCGI
AuthType Digest
AuthName "Mercurial Repository"
AuthUserFile /path/to/web/passwd
Require valid-user
</Location>
alias.url += ( "/mercurial" => "/path/to/web/hgwebdir.cgi" )
$HTTP["url"] =~ "/mercurial" {
cgi.assign = ( ".cgi" => "/usr/bin/python" )
auth.backend = "htdigest"
auth.backend.htdigest.userfile = "/path/to/web/passwd"
auth.require = ("/mercurial" => (
"method" => "digest",
"realm" => "Mercurial Repository",
"require" => "valid-user"
))
}
style = gitweb //更改顯示的style
allow_archive = bz2 gz zip //提共下載的格式
contact = Josh //聯絡人資訊
push_ssl = true //是否使用SSL
description = Josh's Shadow Research Project
allow_push = josh //允許push的使用者 (如要開放所有人請使用 *)
hidden = false 是否在網頁中列表中隱形
hg clone path
最近使用Subversion(SVN)的專案越來越多,我實驗室的專案也全面使用,不過,這種Client-Server式的架構有一個嚴重的問題,就是在網路斷掉時,就沒有版本控制的能力了,也因此有另一種形式的版本控制系統的出現。
Distributed Version Control System (DVCS),分散式版本控制系統是現在越來越紅的一種版本控制系統的方式,有別於一般Client-Server的架構,分散式其實就是在每一個Client端都有自己的檔案庫存在,自己開發的文件檔案就直接Commit到Local端的檔案庫中,而檔案庫再跟主要的檔案庫Server或是其他Client端的檔案庫做同步化的動作,稱作 Pull 跟 Push ,因此在網路不通時,可以完全的獨立作業,又同時享有版本控制的好處,而網路連線時再跟其他檔案庫來交換內容,甚至可以打破傳統階層式的架構,採用Peer-to-peer(P2P)的方式來運作,每一個Client同時也是Server(依據不同的版本控制統而定),這裡有一些DVCS的運作圖可以連上去看一下(BitKeeper的產品介紹)
看了一下Wiki上的比較跟列表,比較紅或是比較成熟的大概是Git, Mercurial, Bazaar 以及SVK吧,在Choosing a Distributed Version Control System這一篇文章中有列出一些選擇的項目及他們的優缺點可以作為參考,如果是原Subversion的使用者,或許可以考慮使用SVK,因為SVK原本就是建立再SVN的環境上在做擴充,可以參考架構圖,不過在多方比較後,Mercurial(水銀的 所以又叫做Hg XD)看起來還是比較好的選擇,尤其是使用介面上有TortoiseHg可以使用(Git有git-cheetah Bazaar有TortoiseBzr 不過看起來都還在早期開發階段),作為初學者,入門的難度比較低,而其功能性及擴充性並不會因此而打折扣,依然是相當強悍的軟體,在加上最近終於進入的1.0的階段,其成熟度應該是可以受到肯定,目前簡單的試用,除了介面還是很醜(這大概要怪GTK+),其他用起來並沒有太多的障礙,目前把我的研究開發目錄從SVNf遷移到Hg上試試看。
補充資料
Distributed Version Control Systems - Why and How(PDF)
Git - User's Manual - GitWiki - Wikipedia
Mercurial - Distributed revision control with Mercurial (PDF) - WikiPedia
Bazaar - Workflows - User Reference - Wikipedia
Free Host - Git - Mercurial
The Risks of Distributed Version Control
Chris' DVCS wishlist
最後要介紹一下assembla這一個網站,他是一個專案管理的整合型線上環境,除了提共Wiki, Chat, Blog, Milestones, Scrum, Tickets等線上專案管理常見的功能外,在這裡介紹他最大的原因就是,他還提供了SVN, Mercurial, Git等檔案庫的支援以及Trac的線上環境供使用及HTTPS的加密通道,免費的有500MB的空間(沒有說明流量限制),並且可以付費升級,跟其他的FreeHost不太一樣的是他就算免費一樣可以選擇完全的Private,對於一般的專案管理應該是非常夠用了,而且他有商業模式在,應該比較不容易倒吧XD
ipkg update
ipkg install lighttpd
// 如果要支援php
ipkg install php-fcgi
// 如果要支援cgi
ipkg install perl
//如果要支援 sqlite
ipkg install sqlite2
ipkg install sqlite
"mod_alias","mod_rewrite","mod_simple_vhost","mod_cgi","mod_compress",
server.port = 80
$HTTP["url"] =~ "/cgi-bin/" {
cgi.assign = ( ".pl" => "/opt/bin/perl" ,
".cgi" => "/opt/bin/perl" )
}
extension=sqlite.so
extension=pdo_sqlite.so
extension=pdo.so
chroot /share/MD0_DATA/optware /opt/sbin/lighttpd -f /opt/etc/lighttpd/lighttpd.conf
/etc/init.d/Qthttpd.sh stop
mount /dev/mtdblock5 -t ext2 /tmp/config
cd /tmp/config
vim autorun.sh
/etc/init.d/Qthttpd.sh stop
chroot /share/MD0_DATA/optware /opt/sbin/lighttpd -f /opt/etc/lighttpd/lighttpd.conf
cd /
umount /tmp/config
#30 4 * * * /etc/init.d/Qthttpd.sh restart
// 自己signed自己的方式
openssl req -new -x509 -keyout xxx.pem -out xxx.pem -days 3650 -nodes
$SERVER["socket"] == "0.0.0.0:443" {
ssl.engine = "enable"
ssl.pemfile = "/path/xxx.pem"
}
svnadmin create /SVNRoot
svnserve -d --listen-host=0.0.0.0 --listen-port=<請輸入> -r /SVNRoot
vim /etc/init.d/svn
//進入編輯畫面之後按i再輸入下方script (此Script感謝龍頭大大教導)
#!/bin/sh
# description: Svnserve auto start-stop script. by bignose
# chkconfig: - 20 80
#
SVN_HOME=/usr/bin
SVN_OWNER=root
if [ ! -f "$SVN_HOME/svnserve" ]
then
echo "svnserver startup: cannot start"
exit
fi
case "$1" in
'start')
su - $SVN_OWNER -c "$SVN_HOME/svnserve -d --listen-host=0.0.0.0 --listen-port=X -r /SVNRoot -T"
;;
'stop')
su - $SVN_OWNER -c "$SVN_HOME/killall svnserve"
;;
'restart')
su - $SVN_OWNER -c "$SVN_HOME/killall svnserve"
su - $SVN_OWNER -c "$SVN_HOME/svnserve -d --listen-host=0.0.0.0 --listen-port=X -r /SVNRoot -T"
;;
esac
//記得輸入想要的port之後 按ESC跟:wq存檔離開
//最後給他執行權限
chmod 755 /etc/init.d/svn
cd /share/Public
wget ftp://csdread:[email protected]/NAS/Optware-Ipkg/optware-tsx09.tar.gz
tar zxvf optware-tsx09.tar.gz
//安裝
./optware-bootstrap-qnap-tsx09.sh optware_chroot.tar.gz
//反安裝
./optware-bootstrap-qnap-tsx09.sh uninstall
//如果有遇到某西軟體不能跑 需要再加上
chroot /share/HDA_DATA/optware /bin/bash
ipkg list | more
ipkg install svn
svnadmin create /share/Public/Repository/
svnserve -d --listen-host=0.0.0.0 --listen-port=X -r /share/Public/Repository/
mount /dev/mtdblock5 -t ext2 /tmp/config
cd /tmp/config
cat "svnserve -d --listen-host=0.0.0.0 --listen-port=X -r /share/Public/Repository/" >> autorun.sh
cd /
umount /tmp/config
00 06 1,7,13,19,25 * * root /root/Backup.sh /root/freqlist
00 05 4,16,28 * * root /root/Backup.sh /root/list
00 04 10,22 * * root /root/Backup.sh /SVNRoot
在前年Google收購了JotSpot之後 就開始期待著Google的Wiki服務何時會上線
一直到去年底 終於放話會在今年第一季推出 所謂的Google Sites
終於 在昨天終於正式推出此服務 並提供所有Google Apps的使用者來申請
首先登入Google Apps進入到Dashboard版面中 有個 Add more services
選進去就可以看到新的Google Sites在那裡等著被啟用了...
啟用後一樣可以設定Domain跟分享權限
接下來進入你所設定的網域中 按下Create new Site 開始建立新的Site
一開始會先要設定新的站點名稱 也會是url跟在Domain後的網址
接下來就是分類與描述 最後就是此站點的長相 有提供一些範本可以選擇
另外是一些權限設定 有多少人可以編輯 及有多少人可以觀看
開啟網站成功後 進入選項還有更進一步的視覺會設計可以修改
例如每一種樣式的顏色及背景字型等,以及要出現在最左上方的Logo圖樣
至於頁面的編輯方式幾乎跟Google Page一樣
是一種所見即所得的編輯環境
另外也可以切換為HTML編輯模式 來輸入一些Script
另外有一個特性就是可以附加檔案到每一個頁面去
根據說明顯示 每一個Domain有10GB空間 for Premier and Education Edition
但是沒說一般版本是多少@@
另外是每一個使用者可以有500mb的空間 比起google page來的好
對於每一個頁面 還可以新增 Comments上去 就可以直接跟頁面內容以及其他使用者互動
另外也可以整合其他Google的資源到頁面當中 例如Picasa Albums, Google Docs or Calendars等
不過還是有一些缺點 對於每一個頁面 可以控制是否要顯示sidebar 是否要顯示標題
是否要允許附件及評論 就是沒有是否允許被看見或是被編輯
對於存取權限是針對整個網站 而不能針對某一個頁面
因此如果有一些私人文件不想被看見 就只能用老方法
建立兩個站點 一個開放一個隱藏...= =
這裡是我的測試站點 開放測試 帳密請往前找介紹Apps的文章