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
上一篇
下一篇