http://blog.miniasp.com/post/2008/04/How-to-install-PHP4-on-Ubuntu-804-LTS.aspx
據我所知 Ubuntu Linux 大概從 6.06 (Dapper) 開始就不支援 PHP4 了,且 PHP 官方網站也宣布從 2007-12-31 起停止了 PHP4 的計畫(也就是以後也不會再出新版),不過我想應該還是有不少網站是用 PHP4 寫的,要讓這些網站在短時間內全部升級改寫成 PHP5 的版本還真不太容易。今天我也把 Ubuntu 8.04 LTS 裝起來了,並嘗試著也將 php4 裝起來,以下是在 Ubuntu 8.04 成功安裝 php4 的心得分享(當然這個方法在 Ubuntu 6.06, 6.10 或 7.10 一樣適用)。
1. 建立一個檔案到 /etc/apt/sources.list.d/ 目錄下:
# vi /etc/apt/sources.list.d/dapper.sources.list
檔案內容僅需要輸入一行即可:
deb http://tw.archive.ubuntu.com/ubuntu/ dapper universe main restricted multiverse
2. 執行 apt-get update 指令更新 Packages 資料庫
你可以發現最後面取得的時 dapper/universe 套件,這裡面就有包括 php4 的所有相關套件。
3. 搜尋所有 php4 相關的套件
root@ubuntu804:~# apt-cache search php4
4. 安裝 php4-cli
root@ubuntu804:~# apt-get install php4-cli
5. 大功告成!我們來測試一下 php4 是否可以正常執行:
root@ubuntu804:~# php4 -v PHP Warning: mime_magic: type search/400 \\input text/x-tex invalid in Unknown on line 0 PHP Warning: mime_magic: type search/400 \\section text/x-tex invalid in Unknown on line 0 PHP Warning: mime_magic: type search/400 \\setlength text/x-tex invalid in Unknown on line 0 PHP Warning: mime_magic: type search/400 \\documentstyle text/x-tex invalid in Unknown on line 0 PHP Warning: mime_magic: type search/400 \\chapter text/x-tex invalid in Unknown on line 0 PHP Warning: mime_magic: type search/400 \\documentclass text/x-tex invalid in Unknown on line 0 PHP Warning: mime_magic: type regex [Cc]onstant[[:space:]]+[Ss]tory text/x-inform invalid in Unknown on line 0 PHP 4.4.2-1build1 (cli) (built: Apr 6 2006 09:44:32) Copyright (c) 1997-2006 The PHP Group
你可以發現執行的過程會出現一堆 PHP Warning 的警告訊息,這是因為 Ubuntu 8.04 中預設的 /usr/share/file/magic.mime (MIME 定義檔) 檔案中有幾行 php4 認不得,而導致出現警示訊息,不過這幾行並不會影響 PHP 的運作。
因為在 magic.mime 中的這 7 行是用來定義 TeX documents 與 Inform interactive fiction language 的檔案類型,因為很少用到,所以我覺得將這幾行註解掉應該沒關係!所以我們還是修改一下 magic.mime 檔案,將這幾行「太新」的 MIME 定義給註解掉,讓 php4 不會出現警告訊息。你開啟 /usr/share/file/magic.mime 檔案後直接跳到第598行:
# TeX documents, from Daniel Quinlan (quinlan@yggdrasil.com)
0 search/400 \\input text/x-tex
0 search/400 \\section text/x-tex
0 search/400 \\setlength text/x-tex
0 search/400 \\documentstyle text/x-tex
0 search/400 \\chapter text/x-tex
0 search/400 \\documentclass text/x-tex
# Type: Inform interactive fiction language # URL: http://www.inform-fiction.org/ # From: Reuben Thomas <rrt@sc3d.org> 0 regex [Cc]onstant[[:space:]]+[Ss]tory text/x-inform
這要將這幾行最前面加上井字號 ( # ) 後存檔,然後我們在測試一下 php4 是否正常執行
root@ubuntu804:~# php -v PHP 4.4.2-1build1 (cli) (built: Apr 6 2006 09:44:32) Copyright (c) 1997-2006 The PHP Group Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies