環境:CentOS 5.7 php-5.4.11 apache-2.4.3
php 下載鏈接:wget http://cn2.php.net/get/php-5.4.11.tar.gz/from/us3.php.net/mirror
apache 下載鏈接:wget http://mirror.bjtu.edu.cn/apache//httpd/httpd-2.4.3.tar.gz
mysql 直接yum即可,省去安裝的麻煩
一:安裝apache,至於加什麼參數,我認爲最簡單的就是最合適的:
./configure --prefix=/opt/soft/apache
make && make install
新版本的apache在apr和apr-util調用時,一般都依賴自身的apr,否則會報以下類似錯誤:
Cannot use an external APR with the bundled APR-util
所以需要插件的升級支持,安裝以下插件:
wget http://apache.dataguru.cn//apr/apr-1.4.6.tar.gz
wget http://www.fayea.com/apache-mirror//apr/apr-util-1.5.1.tar.gz
wget http://sourceforge.net/projects/pcre/files/pcre/8.31/pcre-8.31.tar.gz/download
解壓過了,進入相關目錄,configure && make && make install 即可
需要注意的是,安裝apr-util時,需要指定安裝好的apr目錄,因此編譯apr-util時加上以下參數
./configure --with-apr=/usr/local/apr/
二:安裝php,這個要看具體的系統需求,我的如下:
./configure --prefix=/opt/soft/php --with-apxs2=/opt/soft/apache/bin/apxs --with-openssl --with-config-file-path=/opt/soft/php/etc --with-mysql --enable-sysvmsg --enable-sysvsem --enable-sysvshm
make && make install
make install 之後,會看到以下提示信息:
Wrote PEAR system config file at: /opt/soft/php/etc/pear.conf
You may want to add: /opt/soft/php/lib/php to your php.ini include_path
/usr/sky/soft/php/php-5.4.11/build/shtool install -c ext/phar/phar.phar /opt/soft/php/bin
ln -s -f /opt/soft/php/bin/phar.phar /opt/soft/php/bin/phar
Installing PDO headers: /opt/soft/php/include/php/ext/pdo/
按照提示,分別進行操作:
cp php.ini-production /opt/soft/php/etc/php.ini
vim /opt/soft/php/etc/php.ini
/opt/tools/php-5.4.11/build/shtool install -c ext/phar/phar.phar /opt/soft/php/bin
ln -s -f /opt/soft/php/bin/phar.phar /opt/soft/php/bin/phar
cp php.ini-production /opt/soft/php/etc/php.ini
我的phh.ini的文件位於/opt/soft/php/etc目錄中
2. 安裝pcntl模塊,在php-5.4.11目錄下執行:
cd ext/pcntl
/opt/soft/php/bin/phpize
./configure --with-php-config=/opt/soft/php/bin/php-config
make
make test
make install
echo "extension=pcntl.so" >> /opt/soft/php/etc/php.ini
3. php 安裝之後,需要修改一下timezone的配置,否則會報 “"PHP Warning: date() [function.date]: It is not safe to rely on the system's timezone settings”此類的錯誤:
修改方法如下兩種:
1). 在php頁頭使用date_default_timezone_set()設置 date_default_timezone_set('PRC');
2). 修改php.ini文件:增加 date.timezone = PRC
3).重啓apache服務
三:yum 安裝mysql
yum install mysql mysql-* php-mysql.x86_6 php-pdo.x86_64 php-pear-MDB2-Driver-mysql.noarch apr-util-mysql.x86_64 mod_auth_mysql.x86_64
四: php與apache整合:
在apache的httpd.conf文件中添加:
AddType application/x-httpd-php .php .php3 .phtml .inc
AddType application/x-httpd-php-source .phps