CentOS 7.4搭建LNMP详细步骤是怎样的?

在CentOS 7.4系统中搭建LNMP环境(Linux+Nginx+MySQL+PHP)是许多服务器运维和开发人员的常见需求,LNMP组合因其高性能、稳定性和灵活性,被广泛应用于Web服务部署,以下将详细介绍在CentOS 7.4上搭建LNMP环境的完整步骤,包括环境准备、安装Nginx、MySQL、PHP以及配置和测试等环节。

CentOS 7.4搭建LNMP详细步骤是怎样的?

环境准备

在开始搭建LNMP之前,需要确保系统满足基本要求并更新至最新状态,以root用户或具有sudo权限的用户登录系统,执行以下命令更新系统软件包:

sudo yum update -y

安装必要的编译工具和依赖库,这些工具在后续安装Nginx和PHP时会用到:

sudo yum groupinstall "Development Tools" -y
sudo yum install wget vim openssl-devel libxml2-devel libjpeg-devel libpng-devel freetype-devel libcurl-devel mysql-devel -y

建议关闭防火墙和SELinux,以避免权限问题影响服务运行:

sudo systemctl stop firewalld
sudo systemctl disable firewalld
sudo setenforce 0

安装Nginx

Nginx是一款高性能的HTTP和反向代理服务器,添加EPEL(Extra Packages for Enterprise Linux)仓库,以获取Nginx的安装包:

sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-12.noarch.rpm

使用yum命令安装Nginx:

sudo yum install nginx -y

安装完成后,启动Nginx并设置开机自启:

sudo systemctl start nginx
sudo systemctl enable nginx

通过浏览器访问服务器的IP地址,应能看到Nginx的欢迎页面,证明安装成功。

安装MySQL

MySQL是常用的关系型数据库管理系统,在CentOS 7.4中,推荐使用MariaDB(MySQL的分支)替代MySQL,执行以下命令安装MariaDB:

CentOS 7.4搭建LNMP详细步骤是怎样的?

sudo yum install mariadb-server mariadb -y

安装完成后,启动MariaDB并设置开机自启:

sudo systemctl start mariadb
sudo systemctl enable mariadb

为了增强安全性,运行MariaDB的安全脚本,设置root密码和其他安全选项:

sudo mysql_secure_installation

根据提示完成配置,包括设置root密码、移除匿名用户、禁止root远程登录等。

安装PHP

PHP是一种广泛使用的服务器端脚本语言,添加Remi仓库,该仓库提供了最新版本的PHP:

sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install yum-utils -y
sudo yum-config-manager --enable remi-php74

安装PHP及其常用扩展:

sudo yum install php php-fpm php-mysql php-gd php-mbstring php-xml php-curl -y

安装完成后,启动PHP-FPM并设置开机自启:

sudo systemctl start php-fpm
sudo systemctl enable php-fpm

配置Nginx支持PHP

为了使Nginx能够处理PHP请求,需要修改Nginx的配置文件,编辑默认的Nginx配置文件:

sudo vim /etc/nginx/nginx.conf

server块中添加以下配置,将PHP请求转发给PHP-FPM处理:

CentOS 7.4搭建LNMP详细步骤是怎样的?

location ~ .php$ {
    root           /usr/share/nginx/html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

保存并退出,然后重启Nginx服务:

sudo systemctl restart nginx

在Nginx的默认网站目录下创建一个PHP测试文件:

echo "<?php phpinfo(); ?>" | sudo tee /usr/share/nginx/html/info.php

通过浏览器访问http://服务器IP/info.php,若能看到PHP信息页面,说明配置成功。

FAQs

  1. 问:如何检查LNMP各服务的运行状态?
    :可以使用以下命令分别检查Nginx、MariaDB和PHP-FPM的运行状态:

    sudo systemctl status nginx
    sudo systemctl status mariadb
    sudo systemctl status php-fpm

    若显示active (running),则表示服务正常运行。

  2. 问:如何修改PHP的配置文件?
    :PHP的主配置文件位于/etc/php.ini,PHP-FPM的配置文件位于/etc/php-fpm.conf/etc/php-fpm.d/www.conf,使用vim编辑器修改配置后,需重启PHP-FPM服务使配置生效:

    sudo systemctl restart php-fpm

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-11-22 10:03
下一篇 2025-11-22 10:09

相关推荐

  • flash存储器划分_区块划分

    Flash存储器通常被划分为多个区块,每个区块包含一定数量的页。这种划分有助于提高数据存储的效率和可靠性。

    2024-07-09
    008
  • CentOS安装sklearn时,有哪些常见步骤和潜在问题需要注意?

    在CentOS系统中安装scikit-learn(简称sklearn)是一个相对简单的过程,以下将详细介绍如何进行安装,并确保环境搭建的整洁与高效,环境准备在开始安装前,请确保您的CentOS系统已更新到最新状态:sudo yum update -y安装依赖sklearn需要一些Python依赖库,我们可以使用……

    2026-01-19
    005
  • CentOS 7 yum SSL证书错误如何解决?

    CentOS 7 作为一款广泛使用的 Linux 发行版,其软件包管理工具 yum 在系统维护和软件安装中扮演着重要角色,随着网络安全意识的提升,SSL/TLS 加密已成为确保数据传输安全的标准配置,本文将详细探讨 CentOS 7 中 yum 与 SSL 的相关配置、问题排查及优化方法,帮助用户确保软件包管理……

    2025-12-09
    007
  • CentOS下vfat与ntfs文件系统使用差异及兼容性问题如何解决?

    CentOS系统下vfat和ntfs文件系统的使用与配置在CentOS系统中,vfat和ntfs是两种常见的文件系统,它们分别用于读取和写入不同类型的存储设备,本文将详细介绍如何在CentOS系统中使用和配置vfat和ntfs文件系统,vfat文件系统vfat文件系统的特点vfat文件系统是一种非常古老的文件系……

    2026-01-31
    003

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信