php5.6原始碼安裝過程

科技小能手發表於2017-11-12

安裝php之前需要安裝好apache和mysql.


(1)、下載和php軟體包和解壓

1
2
3
4
5
cd /usr/local/src
 
wget http://cn2.php.net/distributions/php-5.6.18.tar.gz/from/this/mirror -O php-5.6.18.tar.gz
 
tar -zxvf php-5.6.18.tar.gz



(2)、安裝GCC和各種編譯工具

1
yum install make apr* autoconf automake gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel gd  kernel keyutils  patch  perl kernel-headers compat* mpfr cpp glibc libgomp libstdc++-devel ppl cloog-ppl keyutils-libs-devel libcom_err-devel libsepol-devel libselinux-devel krb5-devel zlib-devel libXpm* freetype libjpeg* libpng* php-common php-gd ncurses* libtool* libxml2 libxml2-devel patch


(3)、配置、編譯、安裝

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
cd php-5.6.18
 
./configure 
--prefix=/usr/local/php 
--with-apxs2=/usr/local/apache24/bin/apxs 
--with-config-file-path=/usr/local/php/etc 
--with-mysql=/usr/local/mysql 
--with-libxml-dir 
--with-gd 
--with-jpeg-dir 
--with-freetype-dir 
--with-iconv-dir 
--with-zlib-dir 
--with-bz2 
--with-openssl 
--enable-soap 
--enable-gd-native-ttf 
--enable-mbstring 
--enable-sockets 
--enable-exif 
--with-curl 
--enable-json 
--disable-ipv6


如果在配置編譯引數過程中有錯誤,可能是缺少了某項開發包,將其補上即可,如:


錯誤資訊:

configure: error: freetype-config not found.


解決辦法:

1
yum install freetype-devel


沒有錯誤了,就可以編譯(make)和安裝(make install)了。

1
make && make install


(4)、配置php.ini和配置Apache的配置檔案httpd.conf

1
cp php.ini-production /usr/local/php/etc/php.ini
1
vim /usr/local/apache24/conf/httpd.conf


找到:

AddType application/x-gzip .gz .tgz


新增:

AddType application/x-httpd-php .php


找到:

 <IfModule dir_module>

     DirectoryIndex index.html

 </IfModule>

修改:

 <IfModule dir_module>

     DirectoryIndex index.html index.htm index.php

 </IfModule>

 

 (5)、重啟Apache伺服器,測試是否解析php

1
2
3
4
5
6
7
8
9
/usr/local/apache24/bin/apachectl -k restart
  
vim /usr/local/apache24/htdocs/info.php
 
編寫如下程式碼:
 
<?php
   phpinfo();
?>


測試(假如ip是:192.168.1.110):

http://192.168.1.110/info.php


參考:http://php.net/manual/zh/install.unix.apache2.php

本文轉自 巴利奇 51CTO部落格,原文連結:http://blog.51cto.com/balich/1743499


相關文章