MySQL 版

概述

MySQL 版 (Pixmicat!-MySQL) 是以 ふたば☆ちゃんねる 釋出的 futaba.phpのmysql版 原始碼為基礎而修改的版本。接受了 2nya NYABB 開發者 小企鵝 君的指教及 伊蘇小勇者 君提出的 MySQL 資料表結構修改建議,經過數十次的修改成為現在所看到的版本。

MySQL 版已經停止維護。最後的維護版本於 2009/05/21,Pixmicat! 四週年紀念日釋出,正式畫下句點。

名稱

經過數次演進,名稱也有更動。

  1. GazouBBS雙葉改-MySQL scribe FIXED (futaba.phpのmysql版為基礎增改)
  2. Pixmicat!-MySQL (2006 年正式命名)

歷史

GazouBBS雙葉改 scribe FIXED 完成之後,感受到 Log 版處理巨大記錄檔的效率問題,開始嘗試以 MySQL 資料庫為資料來源移植。原本是想直接移植舊有 Log 版成為 MySQL 版,但是工程太龐大。嘗試從零開始開發 MySQL 版難度也高。於是發現 ふたば☆ちゃんねる 有「futaba.phpのmysql版」原始碼後,以此為基礎開始逐步加入 Log 版的功能。最後在 小企鵝 和 伊蘇小勇者 等人的建議與協助下完成了 MySQL 版,命名為「GazouBBS雙葉改-MySQL scribe FIXED」。

在 2006 年時重新命名為「Pixmicat!」,爾後成立了 Pixmicat! 貼圖版開發專案,由 Pixmicat! Development Team 共同維護。

由於 PIO 版開發順利的緣故,及 PIO 版的出現就是為了取代維護不便的 Log/MySQL 版本,團隊決定於 2009/05/21 Pixmicat! 四週年紀念日正式停止 Log/MySQL 版的維護,釋出最後一版 "四週年紀念版"。

架構

不同於 Log 版, MySQL 版使用了一個資料庫和資料表來儲存所有討論文章。所以需要先設定連接至 MySQL 伺服器的設定。

<?php
// MySQL伺服器連接設定
define("MYSQL_SERVER", 'localhost:3306'); // MySQL伺服器之位置
define("MYSQL_USER", 'futaba'); // MySQL連結使用者名稱
define("MYSQL_PASSWORD", 'futaba'); // MySQL連結使用者密碼
define("MYSQL_DBNAME", 'futabasql'); // MySQL連結資料庫名稱
 
define("SQLLOG", 'imglog'); // 記錄資料表名稱
?>

依照 MySQL 伺服器的連接方式,修改這些設定。

版本優缺點

優點

  1. 穩定。大量的討論文章也可以輕鬆處理。
  2. 競賽情況 (Race condition) 發生率極低,資料表寫壞的機率也很低。

缺點

  1. 需要伺服器端 PHP 支援 MySQL 操作函式,也要準備 MySQL 資料庫伺服器。
  2. 連接至 MySQL 伺服器需要交談時間,使用者有時會感受到速度的低落。

版本演進

4th.Anniversary (v090521)
集結近期的安全性及錯誤修正的最後一版
3rd.Release.8 (v080903)
安全性修正
3rd.Release.7 (v080224)
修正程式部分判斷及相容性錯誤
3rd.Release.6 (v071014)
修正 XSS 漏洞、GD BMP 支援、透明代理 IP 問題。增加程式執行效率及封鎖名單 CIDR 表示法
3rd.Release.5 (v070617)
修正名稱問題。新增預設值設定。新增綜合性 IP/Hostname/DNSBL 封鎖機能
3rd.Release.4 (v070106)
修正 Trip 問題。新增強制砍名功能。
3rd.Release.3 (v061027)
修正 Cookie 問題。新增對 Spam 用欄位陷阱。
3rd.Release (v060924)
修正管理模式圖檔連結。新增[無貼圖]勾選欄防止文字廣告。
3rd.Release (v060814)
修正引用系統在同頁的連結方式。新增 BMP 生成預覽圖支援。
2nd.Release (v060513)
修正截字函式、管理員 Cap 權限。新增 DNSBL 黑名單、引用瀏覽系統、逆轉換查找表快取、Big5 櫻花日文檢查功能。
v060319 (1st.Release)
首次 OSS 化後釋出版,並以單版面 (N) 版本為主。新增搜尋功能、PTE 樣版函式庫、內容動態 Gzip 壓縮傳輸。

參見

除非特別註明,本頁內容採用以下授權方式: Creative Commons Attribution-Noncommercial-Share Alike 2.5 License.