Ubuntu 14.04 安装 Nginx 1.10 + PHP 7 + MySQL 5.7

测试环境:

  • OS: Ubuntu 14.04.5 LTS
  • Nginx 1.10.1
  • PHP 7.0.11
  • MySQL 5.7

测试环境中 Ubuntu 使用阿里云镜像源,也可使用其他镜像源

以下操作均需以 root 身份执行

安装 Nginx 1.10.1

下载签名密钥

wget http://nginx.org/keys/nginx_signing.key
apt-key add nginx_signing.key

添加 Nginx 源

这里需要注意的是,nginx 提供两种版本,分别是稳定版本和主流版本,根据自己的需要选择,我安装时选择的是稳定版本。

稳定版本:(其中,trusty 代表系统版本标号,Ubuntu 16.04 的版本标号是 xenial,请自行修改)

echo "deb http://nginx.org/packages/ubuntu/ trusty nginx" >> /etc/apt/sources.list
echo "deb-src http://nginx.org/packages/ubuntu/ trusty nginx" >> /etc/apt/sources.list

主流版本:

echo "deb http://nginx.org/packages/mainline/ubuntu/ trusty nginx" >> /etc/apt/sources.list
echo "deb-src http://nginx.org/packages/mainline/ubuntu/ trusty nginx" >> /etc/apt/sources.list

安装 Nginx

apt-get update
apt-get install nginx

PHP 7.0.11

添加 PHP 7 源

由于 Ubuntu 14.04 的镜像源中 PHP 版本较低,所以这里需要额外添加 PHP 7 源。

add-apt-repository ppa:ondrej/php

安装 PHP 7

apt-get update
apt-get install php7.0 php7.0-fpm php7.0-cli php7.0-common php7.0-dev

安装 PHP 7 扩展

apt-get install php7.0-curl php7.0-gd php7.0-mysql php7.0-bz2 php7.0-mbstring php7.0-mcrypt php7.0-zip php-gettext php-mbstring php-mcrypt

安装依赖环境

apt-get install libxml2 libxml2-dev build-essential openssl libssl-dev libcurl4-gnutls-dev libjpeg-dev libpng12-dev libmcrypt-dev libreadline6 libreadline6-dev libgd-dev libxslt1-dev

修改 php.ini 文件

vim /etc/php/7.0/fpm/php.ini

#cgi.fix_pathinfo=1 这一行去掉注释,将 1 改为 0 。

cgi.fix_pathinfo=1 时,php 解释器会解析客户端请求的文件各种类型,这可能会引发一些安全漏洞;当为 0 时,解释器只会去解析特定的文件类型。因此,为了避免安全隐患,一般设置为 0。

重启 php7.0-fpm

service php7.0-fpm restart

MySQL 5.7

下载 apt 文件

wget http://repo.mysql.com//mysql-apt-config_0.8.0-1_all.deb

设置 MySQL 的安装配置

dpkg -i mysql-apt-config_xx_all.deb

安装 MySQL

apt-get update
apt-get install mysql-server

至此,Nginx 1.10 + PHP 7 + MySQL 5.7 已安装完成,再进行简单的配置后就搭建好服务器环境了。