HCRM博客

如何在CentOS系统上配置LNMP环境?

CentOS LNMP环境配置指南

在Linux服务器环境中,LNMP(Linux + Nginx + MySQL + PHP)是一套高效、稳定的Web服务组合,本文将以CentOS系统为例,详细介绍如何从零开始搭建LNMP环境,涵盖安装、配置及优化步骤,确保服务器满足生产需求。

如何在CentOS系统上配置LNMP环境?-图1
(图片来源网络,侵权删除)

**一、准备工作

1、系统更新

操作前需确保系统处于最新状态:

  • yum update -y

2、安装必要工具

安装编译依赖及常用工具:

  • yum install -y wget curl vim gcc make openssl-devel pcre-devel zlib-devel

3关闭防火墙与SELinux(测试环境可选)

临时关闭防火墙:

如何在CentOS系统上配置LNMP环境?-图2
(图片来源网络,侵权删除)
  • systemctl stop firewalld && systemctl disable firewalld

临时禁用SELinux:

  • setenforce 0 && sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

**二、安装Nginx

1、添加Nginx官方源

CentOS默认仓库的Nginx版本较旧,建议使用官方源:

  • vi /etc/yum.repos.d/nginx.repo

输入以下内容:

  • [nginx-stable]
  • name=nginx stable repo
  • baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
  • gpgcheck=1
  • enabled=1
  • gpgkey=https://nginx.org/keys/nginx_signing.key

2、安装并启动Nginx

  • yum install -y nginx
  • systemctl start nginx && systemctl enable nginx

访问服务器IP,若显示“Welcome to Nginx”页面,则安装成功。

如何在CentOS系统上配置LNMP环境?-图3
(图片来源网络,侵权删除)

**三、安装MySQL

1、添加MySQL社区源

下载MySQL官方Yum源:

  • wget https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm
  • rpm -ivh mysql80-community-release-el7-6.noarch.rpm

2、安装MySQL服务

  • yum install -y mysql-community-server
  • systemctl start mysqld && systemctl enable mysqld

3、安全配置

获取初始密码:

  • grep 'temporary password' /var/log/mysqld.log

运行安全脚本:

  • mysql_secure_installation

按提示设置新密码、移除匿名用户、禁用远程root登录等。

**四、安装PHP

1、添加Remi仓库

CentOS默认PHP版本较低,Remi源提供多版本支持:

  • yum install -y epel-release
  • rpm -Uvh https://rpms.remirepo.net/enterprise/remi-release-7.rpm

2、安装PHP 8.x及扩展

  • yum install -y yum-utils
  • yum-config-manager --enable remi-php80
  • yum install -y php php-fpm php-mysqlnd php-opcache php-gd php-curl php-mbstring

3、配置PHP-FPM

修改/etc/php-fpm.d/www.conf

  • user = nginx
  • group = nginx
  • listen = /run/php-fpm/www.sock
  • listen.owner = nginx
  • listen.group = nginx

重启服务:

  • systemctl start php-fpm && systemctl enable php-fpm

**五、配置Nginx支持PHP

1、创建站点配置文件

编辑/etc/nginx/conf.d/default.conf,修改server段:

  • server {
  • listen 80;
  • server_name _;
  • root /usr/share/nginx/html;
  • index index.php index.html;
  • location / {
  • try_files $uri $uri/ /index.php?$args;
  • }
  • location ~ \.php$ {
  • fastcgi_pass unix:/run/php-fpm/www.sock;
  • fastcgi_index index.php;
  • include fastcgi_params;
  • fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  • }
  • }

2、测试并重启Nginx

  • nginx -t
  • systemctl restart nginx

/usr/share/nginx/html目录下创建info.php<?php phpinfo(); ?>,访问http://服务器IP/info.php,若显示PHP信息页则配置成功。

**六、优化与安全建议

1、性能调优

Nginx:调整worker_processes为CPU核心数,启用Gzip压缩。

PHP-FPM:根据内存调整pm.max_children,启用OPcache加速。

MySQL:配置innodb_buffer_pool_size为物理内存的70%。

2、安全加固

- 为MySQL创建独立应用账号,限制权限。

- 定期备份数据库及网站文件。

- 启用HTTPS,使用Let's Encrypt免费证书。

个人观点

LNMP环境凭借其轻量、高效的特点,已成为中小型项目的首选方案,配置过程中需注重细节,例如权限管理、服务依赖关系等,建议初次部署后通过压力测试工具(如apache Bench)验证性能,并根据实际业务需求调整参数,若追求自动化,可结合Ansible或Shell脚本实现一键部署,进一步提升运维效率。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/29154.html

分享:
扫描分享到社交APP
上一篇
下一篇