Linux系統apache2.4環境下php7.0.0的源碼安裝過程。還是先聲明,Linux命令不進行講解,將文件上傳到Linux不進行講解。最後,確保你已經安裝了apache2.4和mysql。如果沒有安裝,可以看下我寫的mysql的安裝和apache2.4的安裝。下面,進入正題。
工具/原料
Linux系統
php-7.0.0.tar.gz源碼包
方法/步驟
首先,就是下載php-7.0.0.tar.gz源碼包,大家可以去 進行下載,看下面兩張圖:
將下載的源碼包上傳到Linux系統中,我上傳到了/mysoft目錄。進入/mysoft目錄:cd /mysoft。解包php-7.0.0.tar.gz,並查看/mysoft目錄下的文件,依次執行:
gzip -d php-7.0.0.tar.gz
tar -xf php-7.0.0.tar
ls -l
解包完成後,可以看到/mysoft目錄下多出一個目錄php-7.0.0
進入目錄php-7.0.0:cd ./php-7.0.0。然後進行php的源碼安裝,依次執行:
./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysqli --with-pdo-mysql --enable-mbstring
make
make install
這裡我只是隨意指定了幾個選項,有關詳細的配置大家可以執行:
./configure --help
進行查看
等我有時間,再專門把配置選項都翻譯一下。
來對上一步作個補充,如果你在執行./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysqli --with-pdo-mysql --enable-mbstring時,出現這樣的錯誤
configure:error:xml2-config not found.Please check your libxml2 installation.
說明需要libxml2,用yum裝一下:yum -y install libxml2 libxml2-devel
裝完libxml2後,就可以正常地進行php的源碼安裝了
這裡,我再囉嗦一句。php7.0.0取消了--with-mysql配置選項,也就說php7.0.0默認就是支持mysql的,所以在進行configure的時候,不要指定這個選項。如果指定了,會提示:
configure:WARNING:unrecognized options:--with-mysql
php安裝完成後,用Vim打開apache配置文件httpd.conf:
vi /usr/local/apache2/conf/httpd.conf
打開後,設置搜索時不區分大小寫:
:set ic
搜索“php7”字符串:
/php7
看是否搜索到:LoadModule php7_module modules/libphp7.so
如果沒有搜索到(一般都是可以搜索到的),就將這段指令添加到httpd.conf配置文件中,使apache可以加載libphp7.so模塊,並進行php文件的解析。
注:Vim中,按 a 或 i 鍵可以進行編輯或插入文本,按 o 鍵可以插入新行。編輯完成後,按Esc鍵退出編輯模式,返回命令模式,執行 :
:wq
進行保存退出。
在httpd.conf配置文件中再添加一段指令:
SetHandler application/x-httpd-php
這段指令告訴apache,碰到文件名以
.php, .php2, .php3, .php4, .php5, .php6或phtml結尾的文件使用
libphp7.so模塊進行解析。
其中"\.ph(p[2-6]? tml)$"為正則表達式,你可以隨意更改,只要符合PCRE正則表達式語法,都可以。
接下來,在Vim中搜索”DirectoryIndex“字符串,大家可以看到已經有index.html了,在index.html後面添加你想讓apache識別的DirectoryIndex
到這裡,php安裝配置基本結束,接下來進行測試。進入
/usr/local/apache2/htdocs目錄:cd /usr/local/apache2/htdocs
創建一個測試文件:touch index.phtml
用Vim打開它:vi ./index.phtml
按 i 鍵進入編輯模式,添加:
phpinfo();
?>
按Esc鍵回到命令模式,保存退出:
:wq
進行測試。可以看到apache已經支持php了。
最後提醒一下:
php安裝配置完成後,如果你想變更configure時的配置選項,你只需重複第3步就可以了
注意事項
確保你的Linux系統中已安裝了gcc和gcc-c++
確保你的Linux系統是連網的
確保你已經安裝了apache2.4與mysql