Ubuntu Server 16.04.1 LTS 64位 搭建LNMP
LNMP 环境代表 Linux 系统下 Nginx + MySQL + PHP 网站服务器架构。本文档介绍 Ubuntu 下的 LNMP 环境搭建。
本文档包含软件安装内容,请确保您已熟悉软件安装方法,请参见 Ubuntu 环境下通过 Apt-get 安装软件 。
安装配置 Nginx
- 自动安装 Nginx。输入命令:
sudo apt-get install nginx
。为了确保获得最新的 Nginx,可以先使用sudo apt-get update
命令更新源列表。 -
启动 Nginx 服务。输入命令:
sudo /etc/init.d/nginx start
-
命令行中测试 Nginx 服务是否正常运行。输入命令:
wget http://127.0.0.1
若服务正常,显示结果如下。--2013-02-20 17:07:26-- http://127.0.0.1/ Connecting to 127.0.0.1:80... connected. HTTP request sent, awaiting response... 200 OK Length: 151 [text/html] Saving to: `index.html' 100%[===================================>] 151 --.-K/s in 0s 2013-02-20 17:07:26 (37.9 MB/s) - `index.html' saved [151/151]
-
浏览器中测试 Nginx 服务是否正常运行。访问 Ubuntu 云服务器公网 IP。
若服务正常,显示结果如下。
安装配置 MySQL
sudo apt-add-repository ppa:ondrej/php
sudo apt-get update
注意:
直接运行
sudo apt-get
命令安装 PHP可能会报错误,原因是 PHP7.1 等并不在 Ubuntu 的软件库中,因此要使用 PPA ppa:ondrej/php 库。
-
安装 MySQL。输入命令:
sudo apt-get –y install MySQL-server mysql-client php7.1-mysql
。 -
设置 root 用户密码。安装过程中将会让您设置密码。
-
端口查看。安装完成后,输入命令:
netstat -anp
,会发现 3306 端口正在被监听,此时已可以编写 PHP 脚本来连接数据库。
安装配置 PHP
- 安装 PHP 。输入命令进行安装:
sudo apt-get install php7.1 php7.1-fpm
- 确认 PHP 启动方式。在
/etc/php/7.1/fpm/pool.d/www.conf
路径里确认启动方式,使用listen
搜索关键字查看 PHP 的 listen 监听方法。listen = /var/run/php7.1-fpm.sock ;文件默认会有这行,这是监听sock方式 listen = 127.0.0.1:9000 ; 如何监听端口可,可使用使用 ip:port 时,需手动该行
注意:
示例环境为 Ubuntu Server 16.04.1 LTS 64位,不同版本 PHP 配置路径可能不一样。
Nginx 与 PHP-FPM 集成
-
启动 PHP-FPM。输入命令“”重新启动“” PHP-FPM 服务:
sudo /etc/init.d/php7.1-fpm restart
。 -
输入命令查看 PHP-FPM 默认配置:
sudo netstat -tunpl | grep php-fpm
,如下图。
以上结果表明 PHP-FPM 默认配置的监听端口为 9000,只需修改配置,将 PHP 解析的请求转发到 127.0.0.0:9000 处理即可。 -
修改 Nginx 配置。输入修改命令:
sudo vim /etc/nginx/sites-available/default
。
先找到 server{.......}中的#location ~\.php${......}把注释去掉
最终改成以下内容:location ~ \.php$ { include snippets/fastcgi-php.conf; #With php7.1-cgi alone; fastcgi_pass 127.0.0.1:9000; #fastcgi_pass unix:/var/run/php7.1-fpm.sock; #根据php实际listen监听情况,自行选择php的启动方法 fastcgi_index index.php; }
-
修改完成后,按“ Esc ”键,输入“ :wq ”,保存文件并返回。
-
查看配置是否正确。输入命令:
sudo cat /etc/nginx/sites-available/default
。 -
配置完成后,重启服务。输入命令:
sudo /etc/init.d/nginx restart sudo /etc/init.d/php7.1-fpm restart
注释:如果php页面访问不了(502,下载文件等错误),需要调试/etc/nginx/sites-available/default文件
环境配置验证
用以下命令在 web 目录下创建 index.php:
sudo vim /usr/share/nginx/www/index.php
写入如下内容:
<?php
echo "<title>Test Page</title>";
echo "hello world";
?>
在浏览器中,访问 Ubuntu 云服务器公网 IP/index.php ,查看环境配置是否成功。如果页面可以显示“ hello world ”,说明配置成功。