红联Linux门户
Linux帮助

ubuntu16.04下apache2.4和php7结合编译安装并安裝PDOmysql扩展

发布时间:2016-07-04 14:51:44来源:DT时代的小卒子作者:linux人
1、编译安装apache2.4.20
第一步: ./configure --prefix=/usr/local/httpd --enable-so   
第二步: make  
第三步: sudo make install
 
2、编译安装libiconv
到这去下载,并编译安装:http://www.gnu.org/software/libiconv/#TOCdownloading
第一步:./configure --prefix=/usr/local 
第二步: make  
第三步: sudo make install
 
3、手动修改编译报错
http://www.itkb.ro/userfiles/file/libiconv-glibc-2.16.patch.gz 这里有个补丁文件  
打开 /srclib/stdio.h  找到报错点:將文件內容手动修改为
#if defined(__GLIBC__) && !defined(__UCLIBC__) && !__GLIBC_PREREQ(2, 16)
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
#endif
 
4、执行sudo ldconfig,老师说姑且理解为刷新动态链接库缓存。
 
5、编译安裝PHP7.0
如果以前编译过PHP定要先执行make clean (上次编译的结果先清除掉)
老三样继续:
第一步:./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/conf  --with-apxs2=/usr/local/httpd/bin/apxs --with-iconv-dir=/usr/local/lib,这一步是生成Makefile
第二步:执行:make ZEND_EXTRA_LIBS='-liconv'
最后 :sudo make install
 
6、安装过程中,自动会拷贝一个 /usr/local/httpd/modules/libphp7.so
贴心的安装程序还会自动修改我们的apache配置文件加入了这一行LoadModule php7_module        modules/libphp7.so
我们自己再加入:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
 
7、查看你apache加载的模块
sudo ./apachectl restart
./apachectl  -t -D DUMP_MODULES  
 
8、php7安裝pdo mysql 扩展
第一步:如果前期当然是清除前期编译文件:make clean.
第二步:到 /usr/local/php/bin 目录下 cat php_config 查看php编译的参数。
第三步:复制出参数,并增加参数(红色为新增参数)
--prefix=/usr/local/php --with-config-file-path=/usr/local/php/conf --with-apxs2=/usr/local/httpd/bin/apxs --with-iconv-dir=/usr/local/lib --enable-mysqlnd --with-pdo-mysql=mysqlnd
第四步: make ZEND_EXTRA_LIBS='-liconv'
第五步:sudo make install
最后,在php.ini加上 extension=pdo_mysql.so
 
本文永久更新地址:http://www.linuxdiyf.com/linux/22057.html