在阿里云轻量应用服务器(Lightweight Application Server)上部署 PHP 应用,是一个非常常见且实用的场景。以下是详细的步骤指南,帮助你在阿里云轻量服务器上部署 PHP 环境并运行你的 PHP 项目。
一、准备工作
-
购买阿里云轻量应用服务器
- 登录 阿里云控制台
- 选择「轻量应用服务器」
- 创建实例,选择操作系统(推荐:Ubuntu 20.04 / CentOS 7 / 或者自带 LAMP 的镜像)
-
获取服务器信息
- 公网 IP 地址
- root 用户密码或密钥
- 开放端口(确保 80、443、22 等端口已开放)
二、选择部署方式(推荐两种)
方式一:使用预装 LAMP/LEMP 镜像(推荐新手)
阿里云轻量服务器提供预装环境的镜像:
-
创建实例时,选择:
- 镜像类型:应用镜像
- 选择:LAMP 或 LNMP(支持 PHP)
-
创建完成后,系统会自动安装:
- Apache/Nginx
- MySQL
- PHP
- phpMyAdmin(可选)
-
登录服务器后,查看默认网站路径:
- LAMP:
/var/www/html - LNMP:
/usr/share/nginx/html或/home/wwwroot/default
- LAMP:
-
上传你的 PHP 项目到该目录即可。
-
通过浏览器访问:
http://<你的公网IP>
⚠️ 注意:首次登录可能需要重置密码或查看初始信息(在控制台“重置密码”或“查看初始密码”)
方式二:手动安装 LAMP 环境(适合自定义需求)
以 Ubuntu 20.04 为例:
1. 更新系统
sudo apt update && sudo apt upgrade -y
2. 安装 Apache
sudo apt install apache2 -y
sudo systemctl enable apache2
sudo systemctl start apache2
3. 安装 PHP(以 PHP 8.1 为例)
sudo apt install software-properties-common -y
sudo add-apt-repository ppa:ondrej/php -y
sudo apt update
sudo apt install php8.1 libapache2-mod-php8.1 php8.1-mysql php8.1-curl php8.1-json php8.1-mbstring php8.1-xml php8.1-zip -y
4. 验证 PHP 安装
php -v
5. 测试 PHP 页面
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
访问:http://<你的IP>/info.php,应看到 PHP 信息页面。
6. 安装 MySQL(可选)
sudo apt install mysql-server -y
sudo mysql_secure_installation
7. 配置防火墙(如果启用)
sudo ufw allow 'Apache'
sudo ufw enable
三、部署你的 PHP 项目
-
将项目文件上传到 Web 目录:
cd /var/www/html # 删除默认内容(可选) sudo rm -rf * # 使用 scp、SFTP 或 git 拉取项目 sudo git clone https://github.com/your/php-project.git . -
设置权限(尤其对上传目录)
sudo chown -R www-data:www-data /var/www/html sudo chmod -R 755 /var/www/html -
修改
php.ini(如需调整配置)sudo nano /etc/php/8.1/apache2/php.ini常见修改:
upload_max_filesize = 64Mpost_max_size = 64Mmax_execution_time = 300
-
重启 Apache
sudo systemctl restart apache2
四、绑定域名(可选)
- 在阿里云「轻量服务器」控制台,进入「域名」管理,添加域名并解析到服务器 IP。
- 在服务器上配置 Apache 虚拟主机(Virtual Host):
sudo nano /etc/apache2/sites-available/your-site.conf内容示例:
<VirtualHost *:80> ServerName yourdomain.com DocumentRoot /var/www/html <Directory /var/www/html> AllowOverride All Require all granted </Directory> </VirtualHost> - 启用站点:
sudo a2ensite your-site.conf sudo systemctl reload apache2
五、安全建议
- 修改默认 SSH 端口,禁用 root 登录
- 安装 fail2ban 防止暴力破解
- 定期备份数据库和网站文件
- 使用 Let’s Encrypt 配置 HTTPS(可用 Certbot)
sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d yourdomain.com
六、常见问题排查
| 问题 | 解决方法 |
|---|---|
| 访问 IP 显示空白 | 检查 /var/www/html 是否有文件,权限是否正确 |
| PHP 不解析 | 检查 Apache 是否加载 PHP 模块 |
| 数据库连接失败 | 检查 MySQL 是否运行,用户名密码是否正确 |
| 上传文件失败 | 修改 php.ini 中的上传限制并重启 Apache |
总结
✅ 推荐流程(新手):
- 选择「LAMP 应用镜像」创建轻量服务器
- 上传 PHP 项目到
/var/www/html - 通过 IP 或域名访问
🔧 高级用户可手动搭建环境,灵活控制版本和配置。
如果你提供具体的 PHP 项目类型(如 WordPress、Laravel、ThinkPHP 等),我可以给出更针对性的部署建议。欢迎继续提问!
CDNK博客