本文共 4414 字,大约阅读时间需要 14 分钟。
安装PHP7在CentOS7系统中是一个常见的任务,以下将详细介绍如何在CentOS7上安装并配置PHP7环境。
在安装PHP7之前,需要安装一些必备的依赖软件包。这些依赖包将帮助我们顺利编译和安装PHP7:
yum install -y gcc-c++ autoconfyum install -y postgresql-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses curl openssl-devel gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp-devel readline-devel libxslt-devel expat-devel xmlrpc-c xmlrpc-c-devel libicu-devel libmcrypt-devel
下载PHP7的最新版本,建议选择稳定版本进行安装。将PHP7解压并编译安装:
cd /usr/srcwget http://cn2.php.net/distributions/php-7.0.0.tar.gztar -xzf php-7.0.0.tar.gzcd php-7.0.0
由于CentOS7的默认仓库中不提供mcrypt相关的开发包,我们需要通过以下两种方法之一解决mcrypt依赖问题:
第一种方法是安装第三方YUM源,例如Atomicorp的源:
wget http://www.atomicorp.com/installers/atomicsh ./atomic
然后使用YUM命令安装mcrypt相关的软件包:
yum install php-mcrypt libmcrypt libmcrypt-devel
第二种方法是从源码安装mcrypt。下载mcrypt的最新源码并编译安装:
cd /usr/local/srcwget http://softlayer.dl.sourceforge.net/sourceforge/mcrypt/libmcrypt-2.5.8.tar.gztar -xf libmcrypt-2.5.8.tar.gzcd /usr/local/src/libmcrypt-2.5.8./configure --prefix=/usr/localmakemake install
接下来,编译PHP7并安装到指定目录:
cd /usr/src/php-7.0.0./configure --prefix=/usr/local/php7 \ --with-mysql-sock \ --with-mysqli \ --enable-fpm \ --enable-soap \ --with-libxml-dir \ --with-openssl \ --with-mcrypt \ --with-pdo-pgsql \ --with-pcre-regex \ --with-zlib \ --enable-bcmath \ --with-iconv \ --with-bz2 \ --enable-calendar \ --with-curl \ --enable-exif \ --enable-fileinfo \ --enable-filter \ --with-pcre-dir \ --enable-ftp \ --with-gd \ --with-openssl-dir \ --with-jpeg-dir \ --with-png-dir \ --with-zlib-dir \ --with-freetype-dir \ --enable-gd-native-ttf \ --enable-gd-jis-conv \ --with-gettext \ --with-gmp \ --with-mhash \ --enable-json \ --enable-mbstring \ --enable-mbregex \ --enable-mbregex-backtrack \ --with-libmbfl \ --with-onig \ --enable-pdo \ --with-pdo-mysql \ --with-zlib-dir \ --with-readline \ --enable-session \ --enable-shmop \ --enable-simplexml \ --enable-sockets \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ --enable-wddx \ --with-libxml-dir \ --with-xsl \ --enable-zip \ --enable-mysqlnd-compression-support \ --with-pear \ --enable-intl
运行以下命令完成编译和安装:
makemake install
将PHP7添加到系统环境变量中:
ln -sf /usr/local/php7/bin/php /usr/local/bin/php
在生产环境中,建议使用PHP的默认配置文件php.ini-development,并将其复制到安装目录:
cp php.ini-development /usr/local/php7/lib/php.ini
将PHP-FPM的默认配置文件复制到安装目录,并启用必要的扩展:
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.confcp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
最后,启动PHP-FPM服务:
cd /usr/local/php7/etc/php-fpm.d/cp /usr/src/php-7.0.0/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpmchmod +x /etc/init.d/php-fpmservice php-fpm start
为了让Nginx能够正确处理PHP文件,需要在Nginx配置文件中添加以下内容:
location ~ \.php(/|$) { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params;} 将上述配置添加到/etc/nginx/nginx.conf文件中。然后重启Nginx服务:
service nginx restart
创建一个简单的PHP文件测试:
echo ' /usr/share/nginx/html info.php
访问页面:
curl http://127.0.0.1/info.php
如果显示“Hello, World!”,说明PHP环境已成功配置。
安装PHP-Memcached:
cd /usr/srcgit clone https://github.com/php-memcached-dev/php-memcached.gitcd php-memcachedgit checkout php7
编译并安装:
/usr/local/php7/bin/phpize./configure --with-php-config=/usr/local/php7/bin/php-configmakemake install
在php.ini中添加以下内容:
extension=memcached.so
然后重启PHP-FPM服务:
service php-fpm start
访问页面:
curl http://127.0.0.0/info.php
在php.ini中添加以下内容:
[opcache]zend_extension=opcache.soopcache.enable=1opcache.enable_cli=1opcache.revalidate_freq=10
重启PHP-FPM服务:
service php-fpm restart
通过访问http://127.0.0.1/info.php或执行php -i,可以查看OpCache的状态。
转载地址:http://czwh.baihongyu.com/