建站全记录(一)在 Ubuntu16.04.1 服务器上搭建 LNMP 服务

我的服务器信息是:Ubuntu Server 16.04.1 LTS 64位。

LNMP 环境代表 Linux 系统下 Nginx + MySQL + PHP 网站服务器架构。

在 Ubuntu 环境下可以通过 Apt-get 快速安装软件。比如:

1
sudo apt-get install 软件名称

如果想要查看已经安装软件的信息,可输入下面的命令:

  • 可通过命令 sudo dpkg -L 软件名查看软件包所在的目录以及该软件包中的所有文件。
  • 可通过命令 sudo dpkg -l 软件名查看软件包的版本信息。

更详细的可以查看腾讯云的文档

Nginx

为了获取最新的 Nginx,可以先更新一下源列表。

1
sudo apt-get update

安装 Nginx

1
sudo apt-get install nginx

启动 Ngnix 服务

1
sudo /etc/init.d/nginx start

命令行中测试 Nginx 服务是否正常运行。

1
wget http://127.0.0.1

若服务正常,显示结果如下。

1
2
3
4
5
6
7
8
9
10
ubuntu@VM-0-63-ubuntu:~$ wget http://127.0.0.1
--2018-05-26 19:39:51-- http://127.0.0.1/
Connecting to 127.0.0.1:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 612 [text/html]
Saving to: 'index.html'
index.html 100%[=========================>] 612 --.-KB/s in 0s
2018-05-26 19:39:51 (58.0 MB/s) - 'index.html' saved [612/612]

关于 wget 命令的知识,可以查看此文章

浏览器中测试 Nginx 服务是否正常运行。

访问 Ubuntu 云服务器公网 IP。
若服务正常,显示结果如下。

WX20180526-194830@2x.png

安装配置 MySQL

安装 MySQL

1
2
sudo apt-get update
sudo apt-get install mysql-server

配置

安装过程中将会让你设置密码

1
sudo mysql_secure_installation

端口查看

安装完成后,输入命令:netstat -anp ,会发现 3306 端口正在被监听,此时已可以编写 PHP 脚本来连接数据库。

安装配置 PHP

安装 php

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

输入 php -v 检查是否安装成功,如果显示下面的信息,则表示安装成功。

1
2
3
4
PHP 7.1.17-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: May 5 2018 04:55:21) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.1.17-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

配置 php

1
sudo vim /etc/php/7.1/fpm/php.ini

输入 /fix_pathinfo 搜索,将 cgi.fix_pathinfo=1 改为cgi.fix_pathinfo=0

1
sudo vim /etc/php7.1/fpm/pool.d/www.conf

找到 listen = /run/php/php7.1-fpm.sock 修改为 listen = 127.0.0.1:9000。使用 9000 端口。

然后重启 php 环境:

1
2
service php7.1-fpm stop
service php7.1-fpm start

Nginx 与 PHP-FPM 集成

启动 PHP-FPM

1
sudo /etc/init.d/php7.1-fpm start

输入命令查看 PHP-FPM 默认配置

1
sudo netstat -tunpl | grep php-fpm

屏幕快照 2018-05-27 下午8.41.42.png

以上结果表明 PHP-FPM 默认配置的监听端口为 9000,只需修改配置,将 PHP 解析的请求转发到 127.0.0.0:9000 处理即可。

修改 Nginx 配置

1
sudo vim /etc/nginx/sites-available/default

将里面 php 的配置修改为下面的配置:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
server {
listen 8080;
server_name localhost;
root /var/www/html;
server_name _;
location / {
root html;
index index.html index.htm index.php;
try_files $uri $uri/ =404;
}
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
#fastcgi_pass unix:/var/run/php7.1-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

保存文件之后重启服务:

1
2
sudo /etc/init.d/nginx restart
sudo /etc/init.d/php7.1-fpm restart

环境配置验证

用以下命令在 web 目录下创建 index.php:

1
sudo vim /usr/share/nginx/www/index.php

然后在 index.php 中加入下面的内容:

1
2
3
4
<?php
echo "<title>Test Page</title>";
echo "hello world";
?>

在浏览器中,访问 Ubuntu 云服务器公网 IP ,查看环境配置是否成功。如果页面可以显示“ hello world ”,说明配置成功。

支持原创