在阿里云轻量应用服务器(Lightweight Application Server)上部署 PHP 网站,对于新手来说其实非常友好,因为阿里云提供了“建站”镜像和图形化管理面板。以下是最适合新手的两种主流方案:方案一(推荐)使用预装环境的一键建站,方案二手动安装 LNMP/LAMP 环境。
方案一:使用“一键建站”镜像(最推荐,零门槛)
这是最快的方式,阿里云官方镜像已经帮你预装了 Nginx/Apache、MySQL/MariaDB 和 PHP,只需上传代码即可。
1. 购买/重置服务器
- 登录阿里云控制台,进入 轻量应用服务器 页面。
- 如果是新购,选择镜像时直接搜索 “建站” 或 "LNMP" / "LAMP"。
- LNMP:Nginx + MySQL + PHP(性能更好,推荐)。
- LAMP:Apache + MySQL + PHP(兼容性好,配置稍繁琐)。
- 如果服务器已存在且没有建站环境,可以在控制台点击 “重装系统”,选择上述镜像进行重装(注意:这会清空原有数据,请提前备份)。
2. 通过宝塔面板管理(可选但强烈推荐)
虽然镜像自带了基础环境,但为了更方便地管理文件、数据库和域名,建议安装 宝塔面板 (Baota)。
- 连接服务器:在控制台点击“远程连接”,使用 SSH 工具(如 Xshell, Putty)或网页终端登录。
-
安装命令(以 CentOS/Ubuntu 为例,镜像通常会自动提示或提供脚本):
# Ubuntu/Debian sudo apt-get update && sudo apt-get install -y wget && wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec # CentOS yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sudo bash install.sh ed8484bec - 安装完成后,终端会显示面板的访问地址、用户名和密码。用浏览器打开该地址登录。
3. 上传网站代码
- 方式 A(宝塔面板):登录后,在左侧菜单点击 “文件”,进入
/www/wwwroot/default目录,删除默认文件,将你的 PHP 项目代码(zip/tar包)解压或直接拖拽上传到该目录。 - 方式 B(FTP/SFTP):在宝塔面板设置中开启 FTP 服务,获取账号密码,使用 FileZilla 等工具上传代码。
4. 配置数据库与域名
- 数据库:在宝塔面板点击 “数据库” -> “添加”,创建一个新的 MySQL 数据库和用户,记录好名称、用户、密码。
- 绑定域名:
- 去你的域名服务商处,将域名解析(A记录)指向你的服务器公网 IP。
- 在宝塔面板 “网站” 菜单,点击 “添加站点”,输入你的域名,PHP 版本选择对应版本(如 7.4 或 8.0),存储路径选择你刚才上传代码的文件夹。
- 修改配置文件:如果你的 PHP 项目需要连接数据库,记得修改项目中的
config.php或.env文件,填入你在第 4 步创建的数据库信息。
方案二:手动安装 LNMP 环境(适合学习原理)
如果你不想用宝塔面板,想手动学习 Linux 环境搭建,请按以下步骤操作(以 Ubuntu 22.04 为例):
1. 更新系统并安装依赖
sudo apt update
sudo apt upgrade -y
2. 安装 Nginx
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
测试:访问 http://你的服务器IP,看到 Nginx 欢迎页即成功。
3. 安装 PHP 及扩展
# 安装 PHP 8.0 (可根据需求更换版本)
sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip -y
4. 安装 MySQL
sudo apt install mysql-server -y
sudo mysql_secure_installation
# 按提示设置 root 密码,选择 Y/N 完成安全加固
5. 配置 Nginx 支持 PHP
编辑 Nginx 配置文件:
sudo nano /etc/nginx/sites-available/default
找到 location ~ .php$ { ... } 部分,确保包含以下内容(通常是默认的,检查是否有注释):
location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.0-fpm.sock; # 注意版本号需与安装的 PHP 一致
}
保存退出 (Ctrl+O, Enter, Ctrl+X),然后重启 Nginx:
sudo systemctl restart nginx
6. 放置代码
将你的 PHP 文件放入 /var/www/html 目录,并确保权限正确:
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
7. 防火墙与安全组(关键步骤)
- 云服务器安全组:登录阿里云控制台 -> 实例列表 -> 点击“更多” -> “防火墙设置”。确保 80 (HTTP) 和 443 (HTTPS) 端口对
0.0.0.0/0开放。 - 系统防火墙:如果是 Ubuntu,可能需要放行:
sudo ufw allow 'Nginx Full' sudo ufw allow OpenSSH sudo ufw enable
常见问题排查 Tips
-
无法访问网站:
- 首先检查阿里云控制台的 安全组 是否放行了 80 端口。
- 其次检查 Nginx 状态:
systemctl status nginx。 - 查看错误日志:
tail -f /var/log/nginx/error.log。
-
PHP 报错 "No such file or directory" 或 权限问题:
- 检查文件所有者是否为
www-data(Ubuntu) 或nginx(CentOS)。 - 尝试运行
sudo chown -R www-data:www-data /path/to/your/site。
- 检查文件所有者是否为
-
数据库连接失败:
- 确认数据库用户权限是否正确(例如
GRANT ALL PRIVILEGES ON db_name.* TO 'user'@'localhost';)。 - 检查
my.cnf是否绑定了bind-address = 127.0.0.1。
- 确认数据库用户权限是否正确(例如
总结建议
作为新手,强烈建议选择方案一中的“建站镜像” + “宝塔面板”模式。这种方式将复杂的命令行操作图形化,极大地降低了出错概率,让你能专注于网站内容本身,而不是环境配置的调试。部署完成后,记得定期在宝塔面板中进行网站备份。
CLOUD技术笔记