在阿里云轻量应用服务器上部署 Apache,核心逻辑其实和你在本地虚拟机或物理机上装 Linux 没太大区别。区别主要在于两点:一是云服务器的防火墙策略(安全组)需要手动放行端口,二是 Ubuntu 的包管理习惯。
以下是实操步骤,按顺序来,别跳步。
1. 连接服务器
使用 SSH 工具(如 Terminal、PuTTY、Xshell)连接你的 Ubuntu 实例。
ssh root@你的服务器IP
# 如果提示密码,输入root密码;如果配置了密钥,直接连接
2. 更新系统源(可选但推荐)
保持软件库最新,避免安装旧版本导致兼容性问题。
sudo apt update && sudo apt upgrade -y
3. 安装 Apache
Ubuntu 默认仓库里有 Apache,一行命令搞定。
sudo apt install apache2 -y
安装完成后,Apache 通常会自动启动。你可以用以下命令检查状态:
systemctl status apache2
如果看到 active (running),说明服务已运行。如果没有,手动启动:
sudo systemctl start apache2
sudo systemctl enable apache2 # 设置开机自启
4. 配置阿里云安全组(关键步骤)
很多新手在这一步卡住,发现本地浏览器访问服务器 IP 显示“无法连接”。这是因为阿里云轻量服务器的防火墙是双向的:Linux 内部有 ufw/iptables,阿里云控制台也有一个“防火墙”面板。
- 登录阿里云控制台,进入你的轻量应用服务器详情页。
- 找到 “防火墙” 标签页。
- 添加一条规则:
- 方向:入方向
- 协议:TCP
- 端口:80 (HTTP)
- 授权对象:
0.0.0.0/0(允许所有 IP 访问) - 策略:允许
注意:如果你后续要配 HTTPS,记得同时放行 443 端口。
5. 验证安装
打开本地浏览器,访问 http://你的服务器IP。
你应该能看到 Apache2 Ubuntu Default Page,上面写着 “It works!”。这说明 Web 服务已经通了。
6. 调整文件权限与目录结构
Apache 的默认网站根目录是 /var/www/html。
- 建议不要直接用 root 用户编辑文件,容易出错且不安全。
- 创建一个普通用户来管理网站文件(可选,但推荐):
sudo adduser webadmin sudo usermod -aG www-data webadmin # 将用户加入 www-data 组,方便读写 - 修改网站目录的所有权:
sudo chown -R www-data:www-data /var/www/html sudo chmod -R 755 /var/www/html
7. 配置虚拟主机(Virtual Host)
如果你想托管多个域名或多个站点,需要配置虚拟主机。
- 创建一个新的配置文件:
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/mysite.conf - 编辑新文件:
sudo nano /etc/apache2/sites-available/mysite.conf -
修改内容如下(示例):
<VirtualHost *:80> ServerAdmin admin@example.com ServerName yourdomain.com # 替换为你的域名或IP DocumentRoot /var/www/html/mysite <Directory /var/www/html/mysite> AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> - 创建对应的目录并放入测试文件:
sudo mkdir /var/www/html/mysite echo "<h1>Hello from MySite</h1>" | sudo tee /var/www/html/mysite/index.html sudo chown -R www-data:www-data /var/www/html/mysite - 启用新站点,禁用默认站点:
sudo a2ensite mysite.conf sudo a2dissite 000-default.conf - 重启 Apache 使配置生效:
sudo systemctl restart apache2
8. 配置 UFW 防火墙(Linux 内部)
虽然阿里云控制台防火墙已经放行,但为了双重保险,建议在 Linux 内部也开启 ufw。
sudo apt install ufw -y
sudo ufw allow OpenSSH
sudo ufw allow 'Apache Full' # 这会同时放行 80 和 443
sudo ufw enable
sudo ufw status
确认状态为 active 且包含 Apache Full。
9. 常见问题排查
- 权限问题:如果页面显示 403 Forbidden,通常是目录权限不对。执行:
sudo chown -R $USER:$USER /var/www/html/your_site sudo chmod -R 755 /var/www/html/your_site - 模块加载:如果需要 PHP、Rewrite 等模块,先启用再重启:
sudo a2enmod rewrite sudo systemctl restart apache2 - 日志查看:出问题时,第一时间看日志:
tail -f /var/log/apache2/error.log tail -f /var/log/apache2/access.log
总结
整个流程就是:装软件 → 开云防火墙 → 改配置 → 重启。阿里云轻量服务器的优势在于网络带宽和集成度高,劣势在于初始配置项较多(尤其是安全组)。只要确保 80 端口内外都通,剩下的就是常规的 Linux 运维操作了。
云计算HECS