php 7 环境安装

178 阅读3分钟

1.安装php:

yum 安装必备

  1. yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel
  1. yum install ntp vim-enhanced gcc gcc-c++ gcc-g77 flex bison autoconf automake glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel libtool* zlib-devel libxml2-devel libjpeg-devel libpng-devel libtiff-devel fontconfig-devel freetype-devel libXpm-devel gettext-devel curl curl-devel pam-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers gzip make bzip2bzip2-devel pcre-devel wget ncurses-devel cmake make perl

 

  1. yum -y install gcc automake autoconf libtool make gcc-c++ glibc libmcrypt-devel mhash-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel lib

上面的yum安装存在重复,不去细细排查了,您复制上面三个安装即可

  1. wget -O php7.tar.gz cn2.php.net/get/php-7.1…

解压

  1. tar -xvf php7.tar.gz
  2. cd php-7.1.1

编译:

  1. ./configure \
  2. --prefix=/usr/local/php \
  3. --with-config-file-path=/etc \
  4. --enable-fpm \
  5. --with-fpm-user=nginx \
  6. --with-fpm-group=nginx \
  7. --enable-inline-optimization \
  8. --disable-debug \
  9. --disable-rpath \
  10. --enable-shared \
  11. --enable-soap \
  12. --with-libxml-dir \
  13. --with-xmlrpc \
  14. --with-openssl \
  15. --with-mcrypt \
  16. --with-mhash \
  17. --with-pcre-regex \
  18. --with-sqlite3 \
  19. --with-zlib \
  20. --enable-bcmath \
  21. --with-iconv \
  22. --with-bz2 \
  23. --enable-calendar \
  24. --with-curl \
  25. --with-cdb \
  26. --enable-dom \
  27. --enable-exif \
  28. --enable-fileinfo \
  29. --enable-filter \
  30. --with-pcre-dir \
  31. --enable-ftp \
  32. --with-gd \
  33. --with-openssl-dir \
  34. --with-jpeg-dir \
  35. --with-png-dir \
  36. --with-zlib-dir \
  37. --with-freetype-dir \
  38. --enable-gd-native-ttf \
  39. --enable-gd-jis-conv \
  40. --with-gettext \
  41. --with-gmp \
  42. --with-mhash \
  43. --enable-json \
  44. --enable-mbstring \
  45. --enable-mbregex \
  46. --enable-mbregex-backtrack \
  47. --with-libmbfl \
  48. --with-onig \
  49. --enable-pdo \
  50. --with-mysqli=mysqlnd \
  51. --with-pdo-mysql=mysqlnd \
  52. --with-zlib-dir \
  53. --with-pdo-sqlite \
  54. --with-readline \
  55. --enable-session \
  56. --enable-shmop \
  57. --enable-simplexml \
  58. --enable-sockets \
  59. --enable-sysvmsg \
  60. --enable-sysvsem \
  61. --enable-sysvshm \
  62. --enable-wddx \
  63. --with-libxml-dir \
  64. --with-xsl \
  65. --enable-zip \
  66. --enable-mysqlnd-compression-support \
  67. --with-pear \
  68. --enable-opcache

在centos7下面,会报错:Don’t know how to define struct flock on this system, set –enable-opcache=no

解决办法:vim /etc/ld.so.conf.d/local.conf # 编辑库文件

  1. /usr/local/lib # 添加该行
  2. :wq # 保存退出
  3. ldconfig # 执行这个命令行,使之生效

!!记得编译完后不能移除这行,会导致php无法启动!!

 

  1. make && make install

复制配置文件到/etc

  1. cp php.ini-development /etc/php.ini

创建快捷方式:

  1. ln -s /usr/local/php/bin/php /usr/bin/php

配置php-fpm:

  1. cp php.ini-production /etc/php.ini
  2. cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
  3. cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
  4. cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
  5. chmod +x /etc/init.d/php-fpm

启动:

  1. /etc/init.d/php-fpm start

2.安装扩展:

oauth
imap
mongodb
redis  (Yii2 不安装redis扩展也是可以用的,可以不用安装)

2.1安装oauth扩展:

  1. wget pecl.php.net/get/oauth-2…
  2. tar -zxf oauth-2.0.2.tgz
  3. cd oauth-2.0.2
  4. /usr/local/php/bin/phpize
  5. ./configure --with-php-config=/usr/local/php/bin/php-config
  6. make && make install
  7. vim /etc/php.ini # 添加 extension=oauth.so
  8. /etc/init.d/php-fpm restart

2.2 安装imap 扩展

  1. cd php-7.1.1/ext/imap
  2. /usr/local/php/bin/phpize
  3. ./configure --with-php-config=/usr/local/php/bin/php-config --with-imap=/usr/lib64 --with-imap-ssl --with-kerberos
  4. make && make install
  5. vim /etc/php.ini
  6. extension=imap.so

如果报错:Cannot find imap library (libc-client.a)

  1. yum install libc-client-devel.x86_64
  2. ln -s /usr/lib64/libc-client.so /usr/lib/libc-client.so

 

2.3 安装 mongodb

  1. wget pecl.php.net/get/mongodb…
  2. tar zxvf mongodb-1.2.5.tgz
  3. cd mongodb-1.2.5
  4. /usr/local/php/bin/phpize
  5. ./configure --with-php-config=/usr/local/php/bin/php-config
  6. make && make install
  7. vim /etc/php.ini
  8. extension=mongodb.so

 

  1. 配置

3.1 mysql的配置,要使用127.0.0.1 不要使用localhost

localhost 会使用unix socket,而不是tcp连接。

4.到这里基本就都配置好了。