Debian 免编译安装 PHP-FPM
本文最后更新于 1805 天前,其中的信息可能已经有所发展或是发生改变。

介绍

前面我们已经介绍 OpenResty 的编译安装教程,这里将介绍安装 PHP 的教程。这里我们将完全不编译任何组件,完全依赖软件源安装。提供 PHP 软件源的 Ondřej Surý 大神是 Debian 社区中 PHP源的维护者,所以无需担心软件的安全和性能问题肯定比我们自己编译更好(对于新手来说)。如果我们对软件版本号不敏感,不关注安全资讯并不会及时作出更新来修补漏洞。

适用系统:Debian 9 / Debian 8

安装 PHP

Ondřej Surý 维护的 PHP 软件源和 Debian 的PHP版本方式一致,提供了 PHP7.1、PHP7.0、PHP5.6 三个版本,未来可能会是持续更新的三个版本。

众所周知 Debian 有一个 Dotdeb 的软件源提供了 Nginx、PHP、Redis 等软件的较新版本,不过从 PHP7.1 开始 Dotdeb 觉得 Ondřej Surý 的软件源提供的 PHP 已经非常好了没有必要重复造轮子。不过 Dotdeb 却没有意识到自己的软件源已经被非常多的镜像网站收录了,而 sury 的软件源则并没有,因此下载就非常慢。 不过还好,Showfom 有提供 Sury 源的加速镜像

软件源安装的 PHP 默认以 Unix Socket 的状态运行在 /run/php/php7.1-fpm.sock,比使用 TCP 以 localhost:9000 的方式性能更好。

安装软件源拓展

Sury 官方默认源:https://packages.sury.org/php/

镜像源:https://mirror.xtom.com.hk/sury/php/

 

添加 GPG

wget -O /etc/apt/trusted.gpg.d/php.gpg https://mirror.xtom.com.hk/sury/php/apt.gpg 

安装 apt-transport-https

apt-get install apt-transport-https

添加 sury 软件源

sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'   

更新软件源缓存:

apt-get update

安装软件

安装 PHP7.1:

apt install php7.1-fpm php7.1-mysql php7.1-curl php7.1-gd php7.1-mbstring php7.1-mcrypt php7.1-xml php7.1-xmlrpc php7.1-zip php7.1-opcache -y

安装 PHP7.0:

apt install php7.0-fpm php7.0-mysql php7.0-curl php7.0-gd php7.0-mbstring php7.0-mcrypt php7.0-xml php7.0-xmlrpc php7.0-zip php7.0-opcache -y

安装 PHP5.6:

apt install php5.6-fpm php5.6-mysql php5.6-curl php5.6-gd php5.6-mbstring php5.6-mcrypt php5.6-xml php5.6-xmlrpc php5.6-zip php5.6-opcache -y

设置 PHP

这里以 PHP7.1 为例,其他版本仅需将版本号改成自己所用的即可.

安装完成后,编辑 /etc/php/7.1/fpm/php.ini 替换换 ;cgi.fix_pathinfo=1 为 cgi.fix_pathinfo=0

快捷命令:

sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/' /etc/php/7.1/fpm/php.ini 

管理 PHP

安装好了先重启一下! 更多操作:

systemctl restart php7.1-fpm #重启
systemctl start php7.1-fpm #启动
systemctl stop php7.1-fpm #关闭
systemctl status php7.1-fpm #检查状态

查看当前 PHP 版本:

root@mf88.biz-service:~# php -v
PHP 7.1.7-1+0~20170711133214.5+stretch~1.gbp5284f4 (cli) (built: Jul 11 2017 13:32:20) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.1.7-1+0~20170711133214.5+stretch~1.gbp5284f4, Copyright (c) 1999-2017, by Zend Technologies

更新 PHP

运行下面的命令系统就会更新所有可以更新的软件包括 PHP

apt update
apt upgrade -y

安装更多组件

上面的一条命令安装 PHP 只是安装了部分 PHP 拓展,更多的软件可见:

root@mf88.biz-service:~# apt-cache search php7.1

libapache2-mod-php7.1 - server-side, HTML-embedded scripting language (Apache 2 module)
php-all-dev - package depending on all supported PHP development packages
php7.1 - server-side, HTML-embedded scripting language (metapackage)
php7.1-cgi - server-side, HTML-embedded scripting language (CGI binary)
php7.1-cli - command-line interpreter for the PHP scripting language
php7.1-common - documentation, examples and common module for PHP
php7.1-curl - CURL module for PHP
php7.1-dev - Files for php7.1 module development
php7.1-gd - GD module for PHP
php7.1-gmp - GMP module for PHP
php7.1-json - JSON module for PHP
php7.1-ldap - LDAP module for PHP
php7.1-mysql - MySQL module for PHP
php7.1-odbc - ODBC module for PHP
php7.1-opcache - Zend OpCache module for PHP
php7.1-pgsql - PostgreSQL module for PHP
php7.1-pspell - pspell module for PHP
php7.1-readline - readline module for PHP
php7.1-recode - recode module for PHP
php7.1-snmp - SNMP module for PHP
php7.1-sqlite3 - SQLite3 module for PHP
php7.1-tidy - tidy module for PHP
php7.1-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP
php7.1-xmlrpc - XMLRPC-EPI module for PHP
libphp7.1-embed - HTML-embedded scripting language (Embedded SAPI library)
php7.1-bcmath - Bcmath module for PHP
php7.1-bz2 - bzip2 module for PHP
php7.1-enchant - Enchant module for PHP
php7.1-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary)
php7.1-imap - IMAP module for PHP
php7.1-interbase - Interbase module for PHP
php7.1-intl - Internationalisation module for PHP
php7.1-mbstring - MBSTRING module for PHP
php7.1-mcrypt - libmcrypt module for PHP
php7.1-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary)
php7.1-soap - SOAP module for PHP
php7.1-sybase - Sybase module for PHP
php7.1-xsl - XSL module for PHP (dummy)
php7.1-zip - Zip module for PHP
php7.1-dba - DBA module for PHP
上一篇
下一篇