五、以模块方式编译安装php
1.解压缩安装包
# tar xf php-5.5.38.tar.bz2
2.安装依赖软件包bzip2-devel和epel源的libmcrypt-devel和libxml2-devel包
# yum install bzip2-devel libmcrypt-devel libxml2-devel –y
3.安装
# cd php-5.5.38
./configure --prefix=/usr/local/php --with-MySQL=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt --with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2 --enable-maintainer-zts
各参数解释:
--prefix=/usr/local/php 默认安装路径
--with-mysql=/usr/local/mysql 指明mysql安装路径,如果有特定路径就使用等号"="后面跟上路径,没有则省略等号"="
--with-openssl 使用OpenSSL
--with-mysqli=/usr/local/mysql/bin/mysql_config 定义mysqli接口
--enable-mbstring 支持多字节字符串支持
--with-freetype-dir 支持各种字体
--with-jpeg-dir 支持处理jpeg格式图片
--with-png-dir 支持处理png格式图片
--with-zlib 支持压缩库
--with-libxml-dir=/usr 支持处理xml文档
--enable-xml 支持xml
--enable-sockets 使php支持以sockets方式通信
--with-apxs2=/usr/local/apache/bin/apxs (关键)表示把php编译成Apache的模块
--with-mcrypt 支持加密解密库
--with-config-file-path=/etc 定义php配置文件(php.ini)放置路径
--with-config-file-scan-dir=/etc/php.d 其他配置文件查找路径
--with-bz2 支持bz2格式加密
--enable-maintainer-zts 仅针对mpm为event和worker的情况,编译成zts模块,如果是prefork则不需要
# make && make install
4.把php的配置文件复制到/etc下
# cp php.ini-production /etc/php.ini
5.编辑httpd配置文件
# cd /etc/httpd24/
先备份
# cp httpd.conf{,.bak}
# vim httpd.conf
确保有这样一行(证明php5模块已加载):
LoadModule php5_module modules/libphp5.so
添加两行,用于支持php格式文档
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
设置默认文档页
修改 DirectoryIndex index.html
为 DirectoryIndex index.php index.html
6.已经设置完毕,下面测试一下:
6.1 重启httpd24
# service httpd24 restart
6.2 检查一下80端口
# ss -tnlp
6.3 看看是否已经有了php5_module
# httpd -M
6.4 修改一下默认页面为php格式,进行测试
# cd /usr/local/apache/htdocs/
# mv index.html index.php
# vim index.php
<?php
$conn=mysql_connect('127.0.0.1','root','');
if ($conn)
echo "Connect OK!";
else
echo "Failure.";
mysql_close();
?>
上面的数据库连接用户名和密码按照自己设置填写.
6.5 浏览器访问测试一下
OK已成功.