下面我将为你提供两种最主流、最推荐的方案:

- 使用 LNMP/LAMP 一键安装包 (推荐新手和快速部署)
- 手动逐个安装 (推荐追求灵活性和学习)
准备工作
在开始之前,请确保你有一台已经安装好 Linux 系统的服务器(推荐使用 Ubuntu/Debian 或 CentOS/Rocky),并且拥有 root 权限(或使用 sudo 命令)。
# 检查系统版本 (以 Ubuntu 为例) lsb_release -a # 更新系统软件包列表 (非常重要!) sudo apt update && sudo apt upgrade -y # 对于 CentOS/Rocky: # sudo yum update -y
使用 LNMP/LAMP 一键安装包
这是最快、最简单的方法,适合快速搭建生产环境或个人测试环境,它会自动帮你安装 Nginx/Apache、MySQL/MariaDB 和 PHP。
选择 1:LNMP (Linux + Nginx + MySQL + PHP)
Nginx 以其高性能和低内存占用而闻名,是目前 Web 服务器的主流选择。
下载并执行安装脚本

# 下载官方推荐的安装脚本 wget http://soft.vpser.net/lnmp/lnmp1.8.tar.gz -cO lnmp1.8.tar.gz && tar zxf lnmp1.8.tar.gz && cd lnmp1.8 # 执行安装程序 sudo ./install.sh
按照提示进行配置 脚本会一步步向你询问:
- 请选择要使用的版本: 选择
nginx。 - 请输入要绑定的域名: 如果没有域名,可以直接按回车,默认会使用 IP 地址。
- 请输入MySQL的root密码: 设置一个强密码并牢记。
- 请设置MySQL的密码: (同上)
- 请输入PHP版本: 这是关键!根据你的项目需求选择,
2(最新稳定版,推荐新项目)1,04(如果项目需要 PHP 7.x)
- 是否安装内存缓存: 可以选择
Redis或Memcached,如果不确定,可以不安装。 - 是否安装PureFTPd: 如果需要通过 FTP 上传文件,可以选择安装。
- 是否安装宝塔面板: 可以选择安装,提供图形化管理界面。
等待安装完成 脚本会自动下载并安装所有组件,这个过程可能需要 10-30 分钟,取决于你的服务器网络和性能。
测试安装 安装完成后,脚本会提示你如何管理,你可以使用以下命令:
# 管理 LNMP 套件
sudo lnmp {start|stop|restart|reload|status} {nginx|mysql|php-fpm|mariadb}
# 添加虚拟主机 (网站)
sudo lnmp vhost add
# 查看配置
sudo lnmp {nginx|mysql|php-fpm|mariadb} status
选择 2:LAMP (Linux + Apache + MySQL + PHP)
Apache 是一个非常成熟和稳定的 Web 服务器,许多老旧系统仍在使用。

安装过程与 LNMP 非常相似,只是在第一步选择时选择 apache。
# 下载并解压 wget http://soft.vpser.net/lnmp/lnmp1.8.tar.gz -cO lnmp1.8.tar.gz && tar zxf lnmp1.8.tar.gz && cd lnmp1.8 # 执行安装,在第一步选择 apache sudo ./install.sh
后续步骤与 LNMP 基本一致,只是 Web 服务器换成了 Apache。
手动逐个安装
这种方法让你对每个组件的安装和配置有更深入的了解,适合需要高度定制化或学习原理的用户,我们以 Ubuntu 22.04 + Nginx + PHP 8.2 + MySQL 为例。
步骤 1: 安装 Nginx
# 安装 Nginx sudo apt update sudo apt install nginx -y # 启动 Nginx 并设置为开机自启 sudo systemctl start nginx sudo systemctl enable nginx # 检查 Nginx 状态 sudo systemctl status nginx # 检查是否可以通过浏览器访问服务器的 IP 地址 # 在浏览器输入 http://<你的服务器IP>
步骤 2: 安装 MySQL (MariaDB)
MariaDB 是 MySQL 的一个流行分支,完全兼容。
# 安装 MariaDB sudo apt install mariadb-server mariadb-client -y # 安全配置 sudo mysql_secure_installation
按照提示操作:
- 输入当前 root 密码(默认为空,直接回车)
- 设置 root 密码 (Y)
- 移除匿名用户 (Y)
- 不允许 root 远程登录 (Y, 更安全)
- 移除测试数据库 (Y)
- 重新加载权限表 (Y)
步骤 3: 安装 PHP 和 PHP-FPM
PHP-FPM (FastCGI Process Manager) 是一个 PHP 的 FastCGI 实现,能让 Nginx 高效地处理 PHP 请求。
# 安装 PHP 8.2 以及一些常用扩展 sudo apt install php8.2-fpm php8.2-mysql php8.2-mbstring php8.2-xml php8.2-curl php8.2-zip php8.2-gd -y # 检查 PHP-FPM 状态 sudo systemctl status php8.2-fpm
步骤 4: 配置 Nginx 以支持 PHP
Nginx 本身不处理 PHP 文件,需要将 .php 文件的请求转发给 PHP-FPM。
创建一个新的 Nginx 配置文件
sudo nano /etc/nginx/sites-available/my-php-site
输入以下配置内容
server {
listen 80;
server_name _; # 用你的域名替换,或用 IP
root /var/www/html; # 网站根目录
index index.php index.html index.htm;
location / {
try_files $uri $uri/ =404;
}
# 将所有 .php 文件的请求转发给 PHP-FPM
location ~ \.php$ {
include snippets/fastcgi-php.conf;
# 这个指令告诉 Nginx 使用哪个 PHP 版本
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
}
# 防止访问隐藏文件(如 .htaccess)
location ~ /\.ht {
deny all;
}
}
启用这个网站配置
# 创建符号链接到 sites-enabled 目录 sudo ln -s /etc/nginx/sites-available/my-php-site /etc/nginx/sites-enabled/ # 删除默认的欢迎页面配置 sudo rm /etc/nginx/sites-enabled/default # 测试 Nginx 配置是否正确 sudo nginx -t # 如果显示 successful,则重载 Nginx sudo systemctl reload nginx
步骤 5: 创建一个 PHP 测试页面
# 创建网站根目录(如果不存在) sudo mkdir -p /var/www/html sudo chown -R $USER:$USER /var/www/html # 创建一个 info.php 文件 sudo nano /var/www/html/info.php
在文件中输入:
<?php phpinfo(); ?>
保存并退出 (Ctrl+X, Y, Enter)。
步骤 6: 测试 PHP 是否工作
在浏览器中访问 http://<你的服务器IP>/info.php,如果看到一个包含 PHP 详细信息的页面,说明你的 PHP 环境已经成功搭建!
安全提示: info.php 会暴露服务器大量敏感信息,测试完成后务必删除它!
sudo rm /var/www/html/info.php
总结与建议
| 方案 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| LNMP/LAMP 一键包 | 快速、简单、自动化,集成了常用管理工具。 | 版本可能不是最新的,配置灵活性较低,可能包含不必要的组件。 | 新手入门、快速部署生产环境、个人博客/网站。 |
| 手动安装 | 灵活可控,版本选择自由,理解每个组件的作用,配置更精简。 | 过程繁琐,需要手动解决依赖和配置问题,对新手不友好。 | 开发者学习、需要高度定制化、服务器环境复杂的项目。 |
给你的建议:
- 如果你是新手,或者只是想快速搭建一个网站:直接使用 方案一 (LNMP 一键包),这是最省时省力的方法。
- 如果你想深入学习 Linux 和 Web 服务器配置:强烈推荐 方案二 (手动安装),虽然步骤多,但每一步都能让你学到东西。
