ubuntu 16.04快速搭建nginx + php7.1 + mysql 环境

Posted 代码堆里的看客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ubuntu 16.04快速搭建nginx + php7.1 + mysql 环境相关的知识,希望对你有一定的参考价值。

在 Ubuntu 系统中,可以使用 apt-get 命令来搭建 LNMP环境。这种方式较编译方式安装更加简便,因此选择使用该方式来搭建环境以供学习,如果不是使用root账号登录系统,请在每句命令前加 sudo ... 来临时获取root权限。
现在网上常见的教程中或多或少都会出现一些坑,本文将这些容易踩坑的点都一一列举了出来:

安装nginx
使用 apt-get install nginx 就能自动安装 Nginx。
为了确保获得最新的Nginx,可以先使用 apt-get update 命令更新源列表。

安装好之后,使用 dpkg -S nginx 命令来搜索 nginx相关文件。
可以从命令显示结果看出 Nginx默认的安装位置是/etc/nginx目录,其配置文件nginx.conf也是在该目录下,并且在 etc/init.d下有 nginx的启动程序,该目录下的程序都会在系统开启时启动。
此外,Nginx的默认网站目录是 /usr/share/nginx/html/,默认Nginx网站配置文件为 /etc/nginx/sites-available/default 。
启动 Nginx服务,使用下面两个命令任意一个即可:

$ /etc/init.d/nginx start|stop|status

$ service nginx start|stop|status


使用 netstat -anp 则可以看到80端口已经处于 LISTEN状态了。
直接查看80端口可以使用命令:sudo lsof -i :80

在本地浏览器输入 ip地址 后,就可以看见 Nginx的欢迎页面了。

安装 php 7.1 与 PHP7.1-FPM
直接运行 apt-get命令安装 PHP 会报错误:

> E: Unable to locate package php7.1
> E: Couldn‘t find any package by regex ‘php7.1‘

原因是 PHP7 等并不在 Ubuntu的软件库中,因此要使用 PPA ppa:ondrej/php库

使用下列命令:

$ apt-add-repository ppa:ondrej/php
$ apt-get update
$ apt-get install php7.1 php7.1-fpm
1

 

如果出现错误代码:

> add-apt-repository: command not found


这个是缺少程序,安装一下就可以了,只是不知道安装的名字,
按以下命令走一趟就可以的了。

$ sudo apt-get install software-properties-common python-software-properties


安装 PHP7.1包的同时也安装了 PHP7.1-CLI

可以使用 php -v 命令来查看 PHP 版本信息。

Nginx 与 PHP-FPM集成
PHP-FPM 与 Nginx 通信方式有两种:
一种是基于TCP的 Internet domain socket 方式,一种是 UNIX domain socket 方式。
UNIX domain socket 可以使同一台操作系统上的两个或多个进程进行数据通信。
UNIX domain socket 的接口和 Internet domain socket 很像,但它不使用网络底层协议来通信。

服务器压力不大的情况下,这两种方式性能差别不大,但在压力比较满的时候,用UNIX domain socket方式,效果确实比较好。

UNIX domain socket 方式:

在 /etc/nginx/sites-available/default 配置文件中(网站根目录也在是这里更改), Nginx已经为与 PHP-FPM的整合准备好了,只需要将下面这部分改好就可以了。sock文件路径为 /run/php/php7.1-fpm.sock

location ~ .php$ {
include snippets/fastcgi-php.conf;
# With php7.0-cgi alone:
# fastcgi_pass 127.0.0.1:9000
# With php7.0-fpm:
#注意这里的文件名需要与/run/php/下的sock后缀的文件名对应
fastcgi_pass unix:/run/php/php7.1-fpm.sock;
}

后再修改 PHP-FPM的配置文件 /etc/php/7.1/fpm/pool.d /www.conf

如下:

# 与 Nginx监听同一个 sock

listen = /run/php/php7.1-fpm.sock

配置好后重启nginx与php服务:

$ service nginx restart
$ service php7.1-fpm restart
1
2
安装 mysql
使用命令

$ apt-get –y install mysql-server mysql-client php7.1-mysql


第三个是 PHP的 MySQL扩展。

安装过程中会让你为 MySQL root用户设置密码。

同样,使用命令 netstat -anp ,会发现 3306端口正在被监听了。

运行命令:

$ mysql -uroot -p您的密码

来测试mysql是否能成功运行。
现在可以编写 PHP脚本来连接数据库了。

原文链接:https://blog.csdn.net/weixin_36025897/java/article/details/81417458

以上是关于ubuntu 16.04快速搭建nginx + php7.1 + mysql 环境的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu16.04搭建Nginx+php7.0

ubuntu16.04快速安装LNMP

在 Ubuntu 16.04 上安装 LEMP 环境之图文向导

在 Ubuntu 16.04 上安装 LEMP 环境之图文向导

ubuntu16.04下 搭建 lnmp 环境

Ubuntu16.04搭建web服务器运行WordPress