温馨提示×

linux lnmp怎样配置

小樊
45
2026-09-30 19:59:54
栏目: 智能运维

下面用通俗 + 可操作的方式,说明在 Linux 上配置 LNMP(Linux + Nginx + MySQL/MariaDB + PHP)的常见做法。适用于 CentOS / Ubuntu / Debian。


一、LNMP 是什么

  • Linux:操作系统
  • Nginx:Web 服务器
  • MySQL / MariaDB:数据库
  • PHP:动态语言(PHP-FPM)

二、方式一:一键脚本(最省事,新手推荐)

1️⃣ 使用 lnmp.org 官方脚本

wget http://soft.vpser.net/lnmp/lnmp2.0.tar.gz
tar zxf lnmp2.0.tar.gz
cd lnmp2.0
./install.sh lnmp

按提示选择:

  • MySQL 版本
  • PHP 版本
  • 是否安装内存优化

安装完成后:

lnmp

可查看管理命令

✅ 适合:快速建站、学习、测试


三、方式二:手动安装(推荐生产环境)

以 Ubuntu 22.04 为例(CentOS 类似)


1️⃣ 安装 Nginx

sudo apt update
sudo apt install nginx -y

测试:

systemctl status nginx

浏览器访问服务器 IP,看到 Nginx 欢迎页即成功。


2️⃣ 安装 MySQL / MariaDB

sudo apt install mysql-server -y

安全初始化:

sudo mysql_secure_installation

登录测试:

mysql -u root -p

3️⃣ 安装 PHP

sudo apt install php-fpm php-mysql php-cli -y

查看 PHP 版本:

php -v

4️⃣ 配置 Nginx 支持 PHP

编辑站点配置:

sudo vim /etc/nginx/sites-available/default

关键配置:

server {
    listen 80;
    server_name yourdomain.com;
    root /var/www/html;

    index index.php index.html;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.1-fpm.sock;
    }
}

⚠️ PHP 版本号根据实际安装调整(如 php8.2-fpm.sock)

测试并重载:

sudo nginx -t
sudo systemctl reload nginx

5️⃣ 测试 PHP

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

浏览器访问:

http://服务器IP/info.php

看到 PHP 信息页即成功 ✅


四、常见管理命令

# Nginx
systemctl start|stop|restart nginx

# PHP
systemctl restart php8.1-fpm

# MySQL
systemctl start mysql

五、防火墙(很重要)

sudo ufw allow 80
sudo ufw allow 443

六、常见错误

❌ 502 Bad Gateway
→ PHP-FPM 没启动或 sock 路径错误

❌ 403 Forbidden
→ 目录权限问题

❌ 页面直接下载 PHP
→ Nginx 未正确配置 PHP


七、进阶建议

  • 使用 Let’s Encrypt 配置 HTTPS
  • 使用 虚拟主机 多站点
  • 使用 php.ini 优化性能
  • 数据库禁止 root 远程登录

如果你告诉我:

  • ✅ 系统版本(CentOS 7 / Ubuntu 22.04 等)
  • ✅ 用途(学习 / 生产 / WordPress)

我可以给你精确配置示例。

0 踩