Ubuntu 16.04下编译安装Apache2.4和PHP7结合
Ubuntu 16.04下编译安装Apache2.4和PHP7结合,并安装PDOmysql扩展。
1、编译安装apache2.4.20
1 第一步: ./configure --prefix=/usr/local/httpd --enable-so
2 第二步: make
3 第三步: sudo make install
2、编译安装libiconv
到这去下载,并编译安装 http://www.gnu.org/software/libiconv/#TOCdownloading
1 第一步:./configure --prefix=/usr/local
2 第二步: make
3 第三步: 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
Apache 的详细介绍:请点这里
Apache 的下载地址:请点这里