1、编译安装apache2.4.20
1 第一步: ./configure --prefix=/usr/local/httpd --enable-so
2 第二步: make
3 第三步: sudo make install
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
./configure --prefix=/opt/php --with-apxs2=/opt/lib/apache2/bin/apxs --with-ibm-db2=/home/db2inst1/sqllib --enable-pdo --with-pdo-odbc=ibm-db2,/home/db2inst1/sqllib --with-pdo-mysql=/opt/mysql --with-mysqli=/opt/mysql/bin/mysql_config --with-pdo-mysql=/opt/mysql --enable-mysqlnd --with-mysql-sock=/tmp/mysql.sock --with-pgsql=/opt/PostgreSQL/9.5 --with-pdo-pgsql=/opt/PostgreSQL/9.5 --with-oci8=instantclient,/opt/ora11g/instantclient_11_2 --with-gd --enable-gd-native-ttf --with-jpeg-dir=/usr --with-openssl --with-mhash -with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --with-zlib=/usr --enable-zip -with-libxml-dir=/usr --enable-xml -with-iconv-dir --with-freetype-dir --with-freetype-dir=/usr --with-pear --enable-soap
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