網站製作學習誌

記錄學習製作網站的一切

在 Ubuntu 9.10 上安裝 PHP 5.3 測試環境

這兩天突然心血來潮,安裝了 Ubuntu 9.10 來玩,安裝完後才發現最重要的 PHP 測試環境沒有搭建起來。

因此我就上網找了幾篇文章,東拼西湊下終於把 PHP 5.3 環境設定好了,以下就來簡單記錄我設定的過程。

安裝 Ubuntu 環境

Ubuntu 的安裝我就不介紹了,實在是太簡單了 (謎:明明就是你懶) ;安裝完後別忘了再安裝 LazyScripts 這個好用的工具集,它可以讓 Ubuntu 更好用。

註:安裝完 LazyScripts 要立刻查看自己的家目錄的 owner 是不是被改成 root 了,不過這應該是我耍笨用 sudo 安裝的關係。

接下來就是安裝 SSH Server 和 VIM :

1
> sudo aptitude install openssh-server vim

剩下的環境細部調整就請大家自行發揮囉。

安裝 Apache 及 MySQL

因為我不太瞭解 Ubuntu 怎麼去設定原始碼編輯環境,又加上 Ubuntu 其實已經可以安裝 Apache 2.2 及 MySQL 5.1 ,所以我就決定直接用 APT 來安裝啦。

安裝 Apache 2.2 相關套件

輸入以下指令就可以自動安裝好 Apache 2.2 了:

1
2
> sudo aptitude install apache2 apache2-mpm-prefork apache2-prefork-dev \
apache2-utils apache2.2-common

安裝完成後, Apache 的設定檔位置會在 /etc/apache2/ 底下,不過它不再是以往的 httpd.conf 了,而是 apache2.conf 。

如果需要 mod_rewrite 的話,就輸入以下指令:

1
2
> sudo cd /etc/apache2/mods-enabled/
> sudo ln -s ../mods-available/rewrite.load rewrite.load

安裝 MySQL 5.1 相關套件

安裝 MySQL 也很簡單,輸入以下指令即可:

1
> sudo aptitude install mysql-server-5.1 mysql-common mysql-client-5.1

安裝好後, MySQL 設定檔會放在 /etc/mysql/my.cnf ;而資料庫檔案則是放在 /var/lib/mysql/ 底下。

安裝 PHP 5.3

因為 Ubuntu 9.10 如果直接安裝 PHP 5 的話,會是採用 PHP 5.2.x 的版本,因此我們需要透過一些方法來讓它改為安裝 PHP 5.3 。

首先,我們要安裝一些必要套件:

1
2
3
4
5
> sudo aptitude install libtidy-dev curl libcurl4-openssl-dev \
libcurl3 libcurl3-gnutls zlib1g zlib1g-dev libxslt1-dev libzip-dev libzip1 \
libxml2 libsnmp-base libsnmp15 libxml2-dev libsnmp-dev libjpeg62 libjpeg62-dev \
libpng12-0 libpng12-dev zlib1g zlib1g-dev libfreetype6 libfreetype6-dev \
libbz2-dev libxpm4-dev libmcrypt-dev libmcrypt4

接下來直接透過以下的方法來改變預設 PHP 版本的安裝:

1
2
3
4
5
6
7
> cd /tmp
> sudo mkdir php53 && cd php53
> sudo wget http://us.archive.ubuntu.com/ubuntu/pool/main/k/krb5/libkrb53_1.6.dfsg.4~beta1-5ubuntu2_i386.deb
> sudo wget http://us.archive.ubuntu.com/ubuntu/pool/main/i/icu/libicu38_3.8-6ubuntu0.2_i386.deb
> sudo dpkg -i *.deb
> sudo echo "deb http://php53.dotdeb.org stable all" >> /etc/apt/sources.list
> sudo aptitude update

安裝 PHP5 的 Apache 模組

現在我們就可以把 Apache 2.2 的 PHP5 模組裝上去了,注意這裡安裝的是 PHP 5.3.2 的版本:

1
> sudo aptitude install libapache2-mod-php5=5.3.2 apache2

安裝好後, Apache 模組會用到的 PHP 設定檔是 /etc/php5/apache2/php.ini 。

安裝 PHP CLI 、 PEAR 套件及其他需要的 extensions

另外我還會用 CLI 模式來使用 PHP ,而且也會用 PEAR 來管理 PHP 模組;不過因為我是用套件來安裝 PHP5 ,所以沒辦法用傳統的方式來使用 CLI 及 PEAR 。

還有 GD 和 cURL 在預設的狀況下也沒有安裝,我們也將它一併安裝進來:

1
> sudo aptitude install php5-gd php5-curl php5-cli php-pear

安裝好後, CLI 模式的 PHP 設定檔為 /etc/php5/cli/php.ini ;而這裡所安裝的 PHP 版本也都會是 PHP 5.3.2 相關版本,要特別注意。

安裝 Xdebug

安裝 Xdebug 時,會使用到 pecl 指令,而 PECL 編譯時則需要以下套件:

1
> sudo aptitude install autoconf automake automake1.4 autotools-dev m4 shtool libtool

然後我們才可以安裝含有 phpize 指令的套件:

1
> sudo aptitude install php5-dev

安裝完 php5-dev 後就可以再安裝 Xdebug 了:

1
> sudo pecl install xdebug

然後我們要找出 xdebug.so 安裝在哪裡:

1
2
> sudo find / -name 'xdebug.so' 2> /dev/null
/usr/lib/php5/20060613+lfs/xdebug.so

取得路徑後,就修改 /etc/php5/apache2/php.ini 及 /etc/php5/cli/php.ini ,在檔案的最後加上:

1
2
[xdebug]
zend_extension="/usr/lib/php5/20060613+lfs/xdebug.so"

最後別忘了重新啟動 Apache :

1
> sudo /etc/init.d/apache2 restart

如果有更好的方法,也請大家不吝指教。

打完收工。

參考文章

Comments