CentOS 6.4如何用yum一键安装lnmp环境?

在服务器运维的领域中,搭建稳定高效的Web环境是基础技能,LNMP架构,即Linux、Nginx、MySQL和PHP的组合,因其高性能和低资源消耗而广受欢迎,本文将详细阐述如何在CentOS 6.4系统上,利用yum包管理器来部署一套完整的LNMP环境。

CentOS 6.4如何用yum一键安装lnmp环境?

重要前提:关于CentOS 6.4的警告

在开始之前,必须强调一点:CentOS 6.4是一个非常古老的操作系统版本,其官方支持早已终止(End-of-Life, EOL),这意味着它不再接收任何安全更新和官方维护,使用它将面临严重的安全风险,本文档仅出于技术学习和特定环境维护的目的提供操作指南,对于任何新的生产项目,强烈建议使用现代的、受长期支持的Linux发行版,如CentOS Stream、AlmaLinux或Rocky Linux。

由于官方源已不可用,我们的第一步是将其替换为CentOS的归档源。

准备工作:配置Yum源

CentOS 6的官方yum仓库已经迁移至vault.centos.org,我们需要修改/etc/yum.repos.d/CentOS-Base.repo文件,将其指向归档地址。

打开终端,执行以下命令备份原文件并替换内容:

cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
sed -i "s/mirrorlist/#mirrorlist/g" /etc/yum.repos.d/CentOS-Base.repo
sed -i "s|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g" /etc/yum.repos.d/CentOS-Base.repo

修改完成后,清理yum缓存并重建:

yum clean all
yum makecache

yum应该可以正常工作了。

安装Nginx

CentOS 6的官方源中不包含Nginx,我们需要借助EPEL(Extra Packages for Enterprise Linux)仓库。

  1. 安装EPEL源:

    yum install epel-release -y
  2. 安装Nginx:

    yum install nginx -y
  3. 启动与配置:
    启动Nginx服务并设置其开机自启:

    CentOS 6.4如何用yum一键安装lnmp环境?

    service nginx start
    chkconfig nginx on
  4. 配置防火墙:
    CentOS 6默认使用iptables,需要开放80(HTTP)和443(HTTPS)端口:

    iptables -I INPUT -p tcp --dport 80 -j ACCEPT
    iptables -I INPUT -p tcp --dport 443 -j ACCEPT
    service iptables save
    service iptables restart

    在浏览器中访问服务器的IP地址,应该能看到Nginx的默认欢迎页面。

安装MySQL

在CentOS 6中,我们通常安装的是MySQL 5.1版本,尽管版本较旧,但对于基础学习环境已足够。

  1. 安装MySQL服务端与客户端:

    yum install mysql mysql-server -y
  2. 启动与配置:
    启动MySQL服务并设置开机自启:

    service mysqld start
    chkconfig mysqld on
  3. 安全初始化:
    运行MySQL自带的安全脚本,设置root密码、移除匿名用户等:

    /usr/bin/mysql_secure_installation

    按照提示操作即可,建议全部选择“Y”(是)。

安装PHP及组件

CentOS 6官方源提供的PHP版本是5.3,为了获得稍新一些的PHP版本(如5.6),我们可以使用Remi仓库,这里以安装PHP 5.6为例。

  1. 安装Remi源:

    rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
  2. 启用Remi的PHP 5.6仓库:
    编辑/etc/yum.repos.d/remi.repo文件,将[remi][remi-php56]节点下的enabled=0改为enabled=1

  3. 安装PHP-FPM及常用扩展:

    CentOS 6.4如何用yum一键安装lnmp环境?

    yum install php php-fpm php-mysql php-gd php-xml php-mbstring -y
  4. 配置PHP-FPM:
    编辑PHP-FPM的配置文件/etc/php-fpm.d/www.conf,将其运行用户和组由apache改为nginx,以便与Nginx协同工作。

    ;user = apache
    user = nginx
    ;group = apache
    group = nginx
  5. 启动与配置:
    启动PHP-FPM服务并设置开机自启:

    service php-fpm start
    chkconfig php-fpm on

整合Nginx与PHP

最后一步是配置Nginx,使其能够将.php文件的请求转发给PHP-FPM处理。

编辑Nginx的默认配置文件/etc/nginx/conf.d/default.conf,找到location ~ .php$部分,并修改为如下内容:

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以使配置生效:

service nginx restart

测试LNMP环境

在Nginx的网站根目录(/usr/share/nginx/html)下创建一个index.php文件:

echo "<?php phpinfo(); ?>" > /usr/share/nginx/html/index.php

再次在浏览器中访问服务器IP,如果看到PHP的详细信息页面,那么恭喜你,CentOS 6.4上的LNMP环境已经成功搭建。

为了方便查阅,以下是核心服务的配置文件和命令摘要:

服务 配置文件路径 启动命令 开机自启命令
Nginx /etc/nginx/nginx.conf service nginx start chkconfig nginx on
MySQL /etc/my.cnf service mysqld start chkconfig mysqld on
PHP-FPM /etc/php-fpm.d/www.conf service php-fpm start chkconfig php-fpm on

相关问答FAQs


解答: 这个错误出现的原因是CentOS 6的官方生命周期已经结束,其原有的软件源镜像地址已经失效,yum无法从这些失效的地址下载软件包信息,解决方法就是本文第一部分提到的,必须手动修改/etc/yum.repos.d/CentOS-Base.repo文件,将其中的mirrorlist注释掉,并启用指向CentOS归档服务器的baseurl,完成修改后,执行yum clean allyum makecache重建缓存,即可解决此问题。

问题2:配置完成后,访问PHP页面出现 “502 Bad Gateway” 错误,该如何排查?
解答: “502 Bad Gateway”错误通常意味着Nginx作为网关,无法从后端服务(这里是PHP-FPM)获得有效的响应,排查步骤如下:

  1. 检查PHP-FPM是否运行: 执行service php-fpm statusps aux | grep php-fpm,确认PHP-FPM进程正在运行,如果没有,请使用service php-fpm start启动它。
  2. 检查Nginx配置: 确认/etc/nginx/conf.d/default.conffastcgi_pass指令的地址和端口(如0.0.1:9000)与PHP-FPM监听的地址和端口一致,可以查看PHP-FPM的配置文件www.conf中的listen参数。
  3. 检查防火墙和SELinux: 确保本地防火墙没有阻止Nginx(通常是80端口)和PHP-FPM(通常是9000端口)之间的通信,在CentOS 6上,SELinux有时也会导致权限问题,可以临时尝试setenforce 0来排查是否为SELinux所致(但这仅为临时排查手段,生产环境需正确配置SELinux策略)。

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

(0)
热舞的头像热舞
上一篇 2025-10-25 02:52
下一篇 2025-10-25 02:55

相关推荐

  • CentOS 远程打补丁时如何确保操作安全且不中断服务?

    CentOS 远程打补丁实践指南在CentOS系统中,及时安装安全更新与功能补丁是保障系统稳定性和安全性的关键环节,通过远程方式批量或单点执行补丁管理,可大幅提升运维效率,本文将详细介绍CentOS远程打补丁的方法、工具选择及最佳实践,补丁管理的核心概念补丁(Patch)本质上是修复软件漏洞、优化性能或新增功能……

    2025-10-17
    005
  • centos 7网卡灯不亮怎么办?排查步骤与解决方法分享

    CentOS 7 作为一款广泛使用的服务器操作系统,其网络连接的稳定性至关重要,在实际使用中,用户可能会遇到网卡指示灯不亮的问题,这通常意味着网卡未能正常工作或与网络设备之间的物理连接存在问题,本文将详细分析 CentOS 7 网卡灯不亮的原因及排查步骤,帮助用户快速定位并解决问题,物理连接检查网卡指示灯不亮的……

    2025-12-18
    002
  • CentOS系统HDMI接口不识别怎么办?

    CentOS系统不识别HDMI设备是一个常见但令人困扰的问题,尤其当用户需要连接外接显示器或投影仪时,这种情况可能由多种原因引起,包括驱动问题、硬件故障或系统配置错误,本文将详细分析可能的原因并提供解决方案,帮助用户快速排查和修复问题,检查硬件连接与基本设置确保HDMI线缆和显示器硬件工作正常,可以尝试将HDM……

    2025-12-13
    005
  • CentOS系统时间调节为何如此关键?如何确保准确同步?

    CentOS 时间调节指南CentOS 作为一款流行的 Linux 发行版,其时间调节是系统管理中的重要环节,正确设置系统时间可以确保日志记录的准确性,避免因时间错误导致的系统问题,本文将详细介绍 CentOS 系统时间调节的方法,查看当前时间使用 date 命令查看当前系统时间:date输出格式为:Wed M……

    2026-01-28
    004

发表回复

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

广告合作

QQ:14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

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

关注微信