方法:1、安裝libtool和libtool-ltdl;2、修改gd庫檔;3、執行「make install」指令編譯安裝PHP源碼包;4、建立PHP設定檔;5、讓apache可以辨識「.php」副檔名;6、重啟Apache伺服器即可。
本教學操作環境:windows7系統、PHP 5.4.25版,DELL G3電腦
linux下安裝php的方法
1) 安裝libtool和libtool-ltdl
[root@localhost mysql]# yum -y install "libtool*" [root@localhost mysql]# yum -y install "libtool-ltdl*"
2) 手動修改gd庫檔案
PHP 5.4 也有一些Bug,在偵測gd 函式庫時會報錯,需要我們手動修改。指令如下:
[root@localhost mysql]# vi /usr/local/gd2/include/gd_io.h #修改gd_io.h头文件 typedef struct gdIOCtx { … void (*data); #在此程序段中加入此句 }
3) 編譯安裝PHP 原始碼套件
指令如下:
[root@localhost mysql]# cd /usr/local/src/ php-5.4.25 [root@localhost php-5.4.25]# ./configure \ #编译前配置 --prefix=/usr/local/php/ \ #指定安装位置 --with-config-file-path=/usr/local/php/etc/ \ #指定PHP配置文件位置 --with-apxs2=/usr/local/apache2/bin/apxs \ #调用apache2 --with-mysql=/usr/local/mysql/ \ #调用mysql --with-libxml-dir=/usr/local/libxml2/ \ #调用libxml2库 --with-jpeg-dir=/usr/local/jpeg6/ \ #调用jpeg库 --with-png-dir=/usr/local/libpng/ \ #调用libpng库 --with-freetype-dir=/usr/local/freetype/ \ #调用freetype库 --with-gd=/usr/local/gd2/ \ #调用gd库 --with-mcrypt=/usr/local/libmcrypt/ \ #调用libmcrypt库 --with-mysqli=/usr/local/mysql/bin/mysql_config \#增加MysqlLi功能 --enable-soap \ #支持SOAP和Web Services --enable-mbstring=all \ #支持多字节字符串 --enable-sockets #支持socket(套接字)通信 --with-pdo-mysql=/usr/local/mysql #启用mysql的pdo模块支持 [root@localhost php-5.4.25]# make #编译 [root@localhost php-5.4.25]# make install #编译安装
4)建立PHP設定檔
和 MySQL 一樣,這個設定檔不用手動建立,也是有範本檔案的,我們只要複製即可。指令如下:
[root@localhost php-5.4.25]# cp /usr/local/src/ php-5.4.25/php.ini-production /usr/local/php/etc/php.ini
5) 讓apache可以辨識「.php」副檔名
在安裝PHP 時,在./configure 指令中使用- -with-apxs2=/usr/local/apache2/bin/apxs 選項,已經把PHP 當作模組被apache 辨識了。不過,apache 並不知道哪些副檔名的檔案要呼叫PHP 模組來解析(如果是apache 不認識的副檔名,那麼客戶端在存取時,apache 不會嘗試解析,而是會提示客戶端下載),所以我們需要修改apache 的設定文件,讓apache 可以認識PHP 腳本的副檔名。
例如,我們想讓apache 在遇到「.php」和「.phps」副檔名時,呼叫PHP 模組來解析這些檔案的內容,那麼我們只需要執行以下命令:
[root@localhost php-5.4.25]# vi /usr/local/apache2/etc/httpd.conf #修改apache配置文件,加入如下内容 AddType application/x-httpd-php.php.phps
#這句話的意思是:如果遇到.php和.phps副檔名,則呼叫PHP模組來解析這個檔案的內容
這句話載入在apache 設定檔中的任何位置都是可以的,不過系統中有類似的語句AddType application/x-gzip.gz.tgz,那麼我們一般將其加載到這句話後面。指令如下:
[root@localhost php-5.4.25]# vi /usr/local/apache2/etc/httpd.conf …省略部分输出… # If the AddEncoding directives above are commented-out, then you probably should define those extensions to indicate media types: # AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddType application/x-httpd-php .php .phps #加载到此位置 …省略部分输出…
至於 PHP 檔案的副檔名,可以自由定義。
6) 重啟Apache伺服器
我們修改了 apache 的設定文件,如果想讓這個修改生效,那麼就必須重新啟動 Apache 伺服器。重啟指令如下:
[root@localhost php-5.4.25]# /usr/local/apache2/bin/apachectl stop [root@localhost php-5.4.25]# /usr/local/apache2/bin/apachectl start
這裡最好不要使用 restart 參數,因為對於原始碼包的 apache 啟動指令,restart 參數有時會不起作用。
補充:測試PHP環境是否正常
對原始碼包安裝的apache 來講,網頁的預設儲存位置是/usr/local/apache2/ htdocs/ 目錄。為了測試 PHP 環境是否正常,我們需要在這個目錄中建立一個 PHP 文件,看看這個文件是否可以正常顯示。指令如下:
[root@localhost php-5.4.25]# vi /usr/local/apache2/htdocs/index.php <?php phpinfo(); ?>
這裡我們使用了phpinfo() 函數,這個函數的主要作用是顯示PHP 的相關訊息,這些資訊包括PHP 的編譯資訊、PHP 的版本、伺服器資訊和環境、PHP 的環境、作業系統資訊、路徑、主要的設定選項、HTTP 頭資訊和PHP 的授權等。我們通常會使用這個函數來測試 PHP 是否安裝成功,接下來在瀏覽器中輸入「http://伺服器IP/index.php」來執行該文件,如下圖所示。
如果能看到上圖,那麼恭喜你,PHP 安裝成功。
推薦學習:《PHP影片教學》
以上是linux下如何安裝php腳本語言的詳細內容。更多資訊請關注PHP中文網其他相關文章!