ubuntu 14.04 安装配置php7

时间:2022-10-07 09:19:50

经过我多次的折腾,终于安装配置PHP7成功了。期间还重做了系统,回过头看真是好笑。系统里装了太多版本的php,加上删除了很多东西,明明有r的lib,就是找不到,没办法。这里记下来我安装成功的过程,中间应该没有漏掉什么。

第一步 先把环境搞定了

sudo apt-get update
sudo apt-get install build-essential

第二步 安装依赖库和项目

sudo apt-get install -y autoconf libtool re2c libxml2-dev openssl libcurl4-openssl-dev  libbz2-dev libjpeg-dev libpng12-dev libfreetype6-dev libldap2-dev libmcrypt-dev   libmysqlclient-dev libxslt1-dev libxt-dev libpcre3-dev libxpm-dev libt1-dev libgmp-dev libpspell-dev librecode-dev libreadline6-dev bison libtidy-dev

第三步 链接到合适的地方

sudo ln -s /usr/lib/x86_64-linux-gnu/libldap.so /usr/lib/ 
sudo ln -s /usr/lib/x86_64-linux-gnu/liblber.so /usr/lib/
sudo ln -s /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h


第四步 configure

./buildconf
./configure --enable-opcache --enable-fpm --enable-pdo --enable-sockets --enable-exif --enable-soap --enable-ftp --enable-wddx --enable-pcntl --enable-soap --enable-bcmath --enable-mbstring --enable-dba --enable-gd-native-ttf --enable-gd-jis-conv --enable-zip --enable-calendar --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --with-mysqli --with-pdo-mysql --with-pdo-sqlite --with-iconv --with-gmp --with-pspell --with-gettext --with-xmlrpc --with-openssl --with-mhash --with-mcrypt --with-xsl --with-curl --with-pcre-regex --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-zlib-dir=/usr --with-xpm-dir=/usr --with-freetype-dir=/usr  --with-gettext=/usr --with-zlib=/usr --with-bz2=/usr --with-recode=/usr --with-ldap --with-pear --with-readline --with-fpm-user=lihongwei --with-fpm-group=lihongwei   

第五步 就是生成和安装

make
sudo make install

第六步 验证一下

php -v

PHP 7.0.0RC1 (cli) (built: Aug 22 2015 20:58:26)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v3.0.0-dev, Copyright (c) 1998-2015 Zend Technologies

安装好了,看起来挺简单的,但是,一些包的缺少让我搞的很恼火,现在好了。为了让php-fpm正确的和nginx一块儿工作,需要做点设置。要想正常工作,需要以下三个文件

<pre name="code" class="html">/usr/local/etc/php.ini
/usr/local/etc/php-fpm.conf
<pre name="code" class="html">/usr/local/etc/php-fpm.d/www.conf

 
 

这三个文件从那里来?第一个文件/usr/local/etc/php.ini直接从你的编译目录下找到php.ini-development或者php.ini-production,把它们两个中的一个直接复制到/usr/local/etc/目录下,直接重命名为php.ini,就可以了。第二个文件/usr/local/etc/php-fpm.conf,其实更加方便,我们直接到/usr/local/etc/目录下,有一个默认文件php-fpm.conf.default,我把直接sudo cp php-fpm.conf.default php-fpm.conf就可以了。第三个文件是直接进入/usr/local/etc/php-fpm.d,然后把其目录下的www.conf.default直接sudo cp www.conf.default www.conf就可以了。好了,现在我们有三个文件了,是不是要修改点什么才能正确干活。简单,如果你就是单机写着玩儿,你可以直接修改/usr/local/etc/php-fpm.conf最后一行的include=NONE/etc/php-fpm.d/*.conf,修改为include=/usr/local/etc/php-fpm.d/*.conf,然后保存退出。测试php-fpm是不是正常,用下面的命令

cd /usr/local/sbin/
sudo ./php-fpm -t

如果正常,会显示success的