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

相关推荐

  • 服务器关进程_进程监控

    在服务器上关闭进程,首先需要找到进程ID。可以使用ps命令查看进程列表,然后使用kill命令关闭指定进程。,,“bash,ps aux | grep “进程名”,kill 进程ID,“

    2024-07-16
    005
  • 反反爬虫 waf_使用WAF阻止爬虫攻击

    使用Web应用防火墙(WAF)可有效阻止爬虫攻击,通过设置规则过滤恶意请求,保护网站数据安全。

    2024-07-09
    0012
  • 如何通过复制网站源码来生成溯源码?

    基于您提供的内容,我无法直接生成摘要,因为内容过于简短且不包含足够的信息。如果您能提供更多的细节或上下文,我将能够更好地帮助您生成一段摘要。请提供更多信息,以便我为您提供更准确的摘要。

    2024-07-25
    006
  • centos如何查看当前网关地址?命令是什么?

    在CentOS系统中查看当前网关是网络管理中的基本操作,网关(Gateway)是连接不同网络的节点,负责数据包的转发,掌握查看网关的方法对于排查网络问题、配置网络服务至关重要,本文将详细介绍多种查看网关的方式,涵盖命令行工具、配置文件解析以及图形化界面操作,同时针对常见问题提供解决方案,使用ip命令查看网关ip……

    2025-12-17
    009

发表回复

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

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

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

关注微信