云网牛站
所在位置:首页 > Linux云服务器 > 在CentOS 7云服务器上快速搭建LEMP堆栈

在CentOS 7云服务器上快速搭建LEMP堆栈

2020-03-08 10:47:09作者:叶云稿源:云网牛站

如果你使用的是CentOS 7云服务器,可以按下面的方法快速的搭建LEMP堆栈,前提是必需拥有sudo安装软件的特权。

 

在CentOS 7云服务器上快速搭建LEMP堆栈的方法

步骤1.安装Nginx

Nginx在默认的CentOS 7存储库中不可用(注:如果已设置为可用,则这一步不需要操作),因此我们将使用EPEL存储库,要将EPEL存储库添加到系统中,请使用以下命令:

sudo yum install epel-release

既然已经启用了EPEL存储库,请使用以下命令安装Nginx软件包:

sudo yum install nginx

安装完成后,输入以下命令启动并启用Nginx服务:

sudo systemctl start nginx

sudo systemctl enable nginx

步骤2.安装MariaDB

下一步是安装MariaDB软件包,为此,运行以下命令:

sudo yum install mariadb-server

一旦安装了MariaDB服务器,请使用以下命令启动并启用该服务:

sudo systemctl start mariadb.service

sudo systemctl enable mariadb.service

注:如果要安装MariaDB新的版本,请自行安装,因为官方的CentOS 7存储库中版本可能会低一些,参考在CentOS 7服务器中安装MariaDB 10.4的方法

如果要安装MySQL,而不是MariaDB,请参考CentOS7系统mysql5.7安装与使用

步骤3.安装PHP

CentOS 7附带的PHP版本有些低,因此我们将使用Remi存储库安装PHP 7.2版本。

运行以下命令以将Remi存储库添加到系统中:

sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

添加后,安装yum-utils软件包并启用remi-php72存储库:

sudo yum install yum-utils

sudo yum-config-manager --enable remi-php72

现在我们启用了Remi存储库,我们可以使用以下命令安装PHP FPM和几个最常见的PHP模块:

sudo yum install php-fpm php-opcache php-cli php-gd php-curl php-mysql

默认情况下,PHP FPM将以用户apache的身份在9000端口上运行,我们将用户更改为nginx,然后从TCP套接字切换到Unix套接字,为此,编辑以下的行,先运行sudo nano /etc/php-fpm.d/www.conf命令打开文件:

...

user = nginx

...

group = nginx

...

listen = /run/php-fpm/www.sock

...

listen.owner = nginx

listen.group = nginx

确保/var/lib/php目录具有正确的权限:

chown -R root:nginx /var/lib/php

保存文件,启用并通过以下命令启动PHP FPM服务:

sudo systemctl enable php-fpm

sudo systemctl start php-fpm

步骤4.配置Nginx处理PHP页面(非必选项)

现在我们已经安装了所有LEMP组件,我们可以编辑Nginx服务器块配置文件并添加以下行,以便Nginx可以处理PHP文件,请参考:在Debian 9 Linux上创建和设置Nginx服务器块(Nginx Server Blocks)

在创建一个服务器块处:

Nginx服务器块配置文件必须以.conf结尾,并存储在/etc/nginx/conf.d目录中,现在为example.com创建服务器块配置文件:

sudo nano /etc/nginx/conf.d/example.com.conf

可以根据需要命名配置文件,通常最好使用域名。

将以下代码复制并粘贴到文件中(/etc/nginx/conf.d/example.com.conf):

server {

listen 80;

listen [::]:80;

root /var/www/example.com/public_html;

index index.html;

server_name example.com www.example.com;

access_log /var/log/nginx/example.com.access.log;

error_log /var/log/nginx/example.com.error.log;

location / {

try_files $uri $uri/ =404;

}

location ~ .php$ {

try_files $uri =404;

fastcgi_pass unix:/run/php-fpm/www.sock;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

}

在sudo nano /etc/nginx/conf.d/example.com.conf文件中添加的代码如下(注:已在上面的文件中添加好):

location ~ .php$ {

try_files $uri =404;

fastcgi_pass unix:/run/php-fpm/www.sock;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

然后不要忘记重启Nginx服务,以使更改生效:

sudo systemctl restart nginx

至此,已在CentOS 7云服务器上搭建了LEMP堆栈。

 

相关主题

在RHEL 8/CentOS 8上安装LEMP(Nginx、MariaDB、PHP7.2)的方法

精选文章
热门文章