bt服務(wù)器架設(shè)linux

bt服務(wù)器架設(shè)linux

ID:32398492

大?。?21.50 KB

頁數(shù):10頁

時間:2019-02-04

bt服務(wù)器架設(shè)linux_第1頁
bt服務(wù)器架設(shè)linux_第2頁
bt服務(wù)器架設(shè)linux_第3頁
bt服務(wù)器架設(shè)linux_第4頁
bt服務(wù)器架設(shè)linux_第5頁
資源描述:

《bt服務(wù)器架設(shè)linux》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。

1、[教程]用Bittorrent和PHP搭建BTTracker服務(wù)器和發(fā)布頁這玩意可真是困擾了我好幾天,終于基本搞定了。很早前就想整個BT服務(wù)器玩玩,一直都是最后半途而廢。這次總算是把整個過程都弄明白了,其實根本就不是什么難事情,就是資料太難找了,在GOOGLE搜的關(guān)于架設(shè)BT服務(wù)器的文章還是幾年前的那幾篇老掉牙的文章,英文又菜得不得了,看文章得用星際譯霸一個個翻譯。搞得頭大了好幾天。現(xiàn)在國內(nèi)網(wǎng)絡(luò)上比較常見的track主要是Bitcomettrack,94BT,還有個btmas,全都不開源,當(dāng)然也就不在我的選擇范圍之內(nèi)了國外網(wǎng)絡(luò)上的track主要是

2、bittorrent,BNBT,還有一些完全用PHP做的tracker.Bittorrent是最原版的BTtrack了,雖然除了一個track的功能,但是你可以在上面做很輕易的擴(kuò)充,也是我的最終選擇。BNBT是用C++編寫的track,還帶了PHP的發(fā)布頁面,但感覺發(fā)布系統(tǒng)做得太粗糙了,本來想拿過來改一下,看了看代碼發(fā)現(xiàn)C的部分把很多功能都已經(jīng)包括進(jìn)去了,也懶得去研究它的代碼,于是作罷。至于純粹用PHP做的tracker和發(fā)布系統(tǒng),經(jīng)過連續(xù)幾天在sf.net上的搜索,找到了一個非常優(yōu)秀的,BT系統(tǒng):Tbsource。做的超級優(yōu)秀!其功能齊全程度幾

3、乎相當(dāng)于一個論壇了,看了下代碼,好象主要是通過把種子和連接信息寫入MYSQL種來實現(xiàn)的,種子信息還好,但是連接信息是時刻在變化的,這樣對數(shù)據(jù)庫的操作會不會太頻繁了?可能是我沒完全看懂它的原理。我經(jīng)常上的www.filemp3.org和bmtorrents.net就是用Tbsource作的,速度和穩(wěn)定性都很好啊!但是正因為Tbsource做的太完善了,我都不知道如何去修改。以后有時間再詳細(xì)研究下,把其中核心的部分抽出來作成DISCUZ的BT插件,應(yīng)該是個好主意。最后還是回到了bittorrent,就用個tracke就可以了,自己用PHP寫個BT發(fā)布

4、索引頁,應(yīng)該很簡單,省得去研究別人得代碼。安裝Bittorrent#apt-getinstallbittorrent啟動track#bttrack–dfiledownloadlogfile.txt–port8099意思就是啟動TRACKER,并在當(dāng)前目錄建立日志文件,downloadlogfile.txt,設(shè)置端口為8099以這種方式啟動tracker的話是不論誰都可以拿你的tracker做服務(wù)器的,如果你想限制只允許上傳到本站的種子才能用該服務(wù)器的話,可以用下面這種方式啟動。#bttrack–port8099–show_namesl–allow

5、ed_dir/mytorrents–dfiledownloadlog.txt這樣的話就只對已經(jīng)上傳到本站/mytorrents目錄下的種子提供track服務(wù)。track這樣就可以以了,下面的問題就是如何編寫發(fā)布系統(tǒng)了思路很簡單,上傳BT種子到指定的目錄,分析BT種子文件,獲得文件名,文件大小等信息并插入數(shù)據(jù)庫,這些信息都是很好搞定的。難搞定的是做種人數(shù)目,下載人數(shù)等信息,這些數(shù)據(jù)都是即時的。是直接通過track插入數(shù)據(jù)庫好還是通過PHP定時查詢tracker再在索引頁面現(xiàn)實。通過track直接插入數(shù)據(jù)庫的效率肯定要高一點,但覺得這樣的即時信息有必

6、要做這樣平凡的插入工作么,還不如通過PHP定時查尋track并生成靜態(tài)頁面現(xiàn)時出來。OK暫時就這么干了!首先是BT種子文件的分析問題,網(wǎng)絡(luò)上有牛人用PHP編寫的兩個流傳甚廣的種子解析文件,BDecode.php和BEncode.php.把這兩個文件include后$array=BDecode(path/to/you/down.torrent);$array返回的是你種子文件信息的數(shù)組。其中$array[”announce-list”]是該種子使用的tracker列表$infohash=sha1(BEncode($array[”info”])返回數(shù)

7、組的hash信息(hash要用sha1()解碼)$filesize=$array[”info”][”length”]/1048576返回文件大小如果是用文件夾做的種子,可以通過下面的方法來獲得文件大小獲得文件名:$filename=$array[”info”][”name”]把上面的種子信息整理下就可以放到數(shù)據(jù)庫里面去了接下來的問題就是BT的即時信息的獲得問題啦。這些信息可以通過向BT服務(wù)器發(fā)送GET請求來獲得例如假如你用bittorrenttrack的地址是http://www.mybt.com:8099/announcd那么你應(yīng)該向這個地址發(fā)

8、送請求:http://www.mybt.com:8099/scrape要取得一個種子的信息你需要提供種子的info_hash(這在我們分

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。