云网牛站
所在位置:首页 > Linux云服务器 > 在Ubuntu 18.04 Server中安装LEMP的方法[Nginx、MariaDB、PHP7.2]

在Ubuntu 18.04 Server中安装LEMP的方法[Nginx、MariaDB、PHP7.2]

2019-01-22 11:20:20作者:叶云稿源:云网牛站

本文介绍在Ubuntu 18.04 Server操作系统中安装LEMP的方法,采用Nginx、MariaDB、PHP7.2。如果你还没有安装Ubuntu 18.04 Linux请参考Ubuntu-18.04.1-live-server-amd64.iso安装全过程

 

一、更新软件包

在我们安装LEMP之前,最好在Ubuntu 18.04中运行以下命令来更新存储库和软件包:

sudo apt update

sudo apt upgrade

 

二、安装Nginx Web服务器

Nginx是一款高性能的网络服务器,如今非常受欢迎,它还可以用作反向代理和缓存服务器,输入以下命令以安装Nginx Web服务器:

sudo apt install nginx

安装完成后,我们可以通过运行以下命令在启动Ubuntu时启用Nginx自动启动:

sudo systemctl enable nginx

然后使用以下命令启动Nginx:

sudo systemctl start nginx

现在查看它的状态:

systemctl status nginx

输出信息:

在Ubuntu 18.04 Server中安装LEMP的方法[Nginx、MariaDB、PHP7.2]

Enabled表示启动时自动启动,我们可以看到Nginx正在运行。请注意,上面的命令在运行后不会立即退出,需要按q键才能退出。

检查Nginx版本可以运行以下命令:

nginx -v

现在,在浏览器地址栏中输入Ubuntu 18.04服务器的公共IP地址,可以看到欢迎使用Nginx网页,这意味着Nginx Web服务器正常运行,如果要在本地Ubuntu 18.04计算机上安装LEMP,请在浏览器地址栏中键入127.0.0.1或localhost。

请注意,某些云服务器提供商可能会默认阻止所有传入流量,因此如果你的浏览器无法连接到Nginx Web服务器,则需要在控制面板中设置防火墙规则:

在Ubuntu 18.04 Server中安装LEMP的方法[Nginx、MariaDB、PHP7.2]

最后,我们需要将www-data(Nginx用户)作为web目录的所有者,默认情况下,它由root用户拥有:

sudo chown www-data:www-data /usr/share/nginx/html -R

 

三、安装MariaDB数据库(参考文章)

请参考下面两篇文章安装MariaDB:

1、在Ubuntu 18.04系统上安装MariaDB 10.4的步骤

2、在Ubuntu 18.04 Server中安装LAMP的方法[Apache、MariaDB、PHP7.2]

注:安装方法跟参考文章2一样,请转到该文章中查看,当然也可以安装MariaDB 10.4版本或者是MySQL数据库,可以看以图解的方式在Ubuntu 18.04.1中安装mysql数据库一文。

 

四、安装PHP7.2

PHP7.2包含在Ubuntu 18.04存储库中,输入以下命令来安装php7.2和一些常用扩展:

sudo apt install php7.2 php7.2-fpm php7.2-mysql php-common php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-readline php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl

像WordPress这样的内容管理系统通常需要PHP扩展,例如,如果安装缺少php7.2-xml,那么一些WordPress网站页面可能是空白的,你可以在Nginx错误日志中找到错误,如:

PHP message: PHP Fatal error:  Uncaught Error: Call to undefined function xml_parser_create()

安装这些PHP扩展可确保你的CMS顺利运行,现在开始php7.2-fpm:

sudo systemctl start php7.2-fpm

启动时启用自动启动:

sudo systemctl enable php7.2-fpm

检查状态:

systemctl status php7.2-fpm

输出信息如下:

在Ubuntu 18.04 Server中安装LEMP的方法[Nginx、MariaDB、PHP7.2]

如果要安装PHP 7.3版本就参考在Ubuntu 18.04或CentOS 7系统上安装PHP 7.3一文。

 

五、创建Nginx Server Block

Nginx Server Block就像Apache中的虚拟主机,我们不会使用默认server block,因为它不足以运行PHP代码,因此,请运行以下命令,删除启用了站点的目录中的默认符号链接:(它仍可用作/etc/nginx/sites-available/default。)

sudo rm /etc/nginx/sites-enabled/default

然后在/etc/nginx/conf.d/目录下创建一个全新的Server Block文件。

sudo nano /etc/nginx/conf.d/default.conf

将以下文本粘贴到文件中,以下代码片段将使Nginx在IPv4端口80和IPv6端口80上侦听一个包含所有服务器的名称:

server {

listen 80;

listen [::]:80;

server_name _;

root /usr/share/nginx/html/;

index index.php index.html index.htm index.nginx-debian.html;

location / {

try_files $uri $uri/ /index.php;

}

location ~ \.php$ {

fastcgi_pass unix:/run/php/php7.2-fpm.sock;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

include snippets/fastcgi-php.conf;

}

location ~ /\.ht {

deny all;

}

}

保存并关闭文件,然后测试Nginx配置:

sudo nginx -t

如果测试成功,请重新加载Nginx:

sudo systemctl reload nginx

 

六、测试PHP

要使用Nginx Web服务器测试PHP-FPM,我们需要在文档根目录中创建一个info.php文件:

sudo nano /usr/share/nginx/html/info.php

将以下PHP代码粘贴到文件中:

<?php phpinfo(); ?>

保存并关闭文件,然后在浏览器地址栏中输入server-ip-address/info.php,将sever-ip-address替换为你的实际IP,如果在本地计算机上按照本文操作,请输入127.0.0.1/info.php或localhost/info.php。

现在应该可以看到服务器的PHP信息,这意味着PHP脚本可以使用Nginx Web服务器正常运行了:

在Ubuntu 18.04 Server中安装LEMP的方法[Nginx、MariaDB、PHP7.2]

这个时候建议运行sudo rm /usr/share/nginx/html/info.php命令删除info.php文件,以使得服务器更加的安全可靠。

至此,在Ubuntu 18.04 Server中安装LEMP全部完成了。

 

相关主题

在Debian 9或Debian 8系统中使用源方式安装LEMP的步骤

精选文章
热门文章