You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS EC2实例启动脚本不生效无法显示Hello World是什么原因

故障排查及修复方案

1. 启动脚本错误修复

你当前使用的启动脚本存在两处核心错误,会直接导致httpd服务部署失败:

  • 安装包名错误:Amazon Linux 2 环境下 httpd 的软件包名为 httpd,而非 httpd.service,错误的包名会导致httpd根本没有被安装,后续启动命令执行无效
  • 服务名不统一:systemctl enable 建议使用完整服务名 httpd.service 避免识别歧义

修复后的完整启动脚本如下:

#!/bin/bash
# Amazon Linux 2 用户数据启动脚本
yum update -y
yum install -y httpd
systemctl start httpd.service
systemctl enable httpd.service
echo "<h1>Hello World from $(hostname -f)</h1>" > /var/www/html/index.html

2. 剩余访问异常排查项

脚本修复完成重新部署实例后如果仍然无法访问,按以下优先级排查:

  • 安全组规则检查:确认实例关联的安全组入站规则已开放 80端口(HTTP协议),允许你当前的客户端公网IP访问,测试场景可临时放通0.0.0.0/0,生产环境禁止配置
  • 公网连通性检查:确认实例部署在公有子网,已分配公网IP/弹性公网IP,子网关联的路由表存在指向互联网网关的默认路由
  • 实例内部防火墙检查:如果使用的不是默认Amazon Linux 2镜像,可能默认开启firewalld服务,执行以下命令放行HTTP流量:
    firewall-cmd --add-service=http --permanent && firewall-cmd --reload
    
  • 服务状态验证:登录实例执行 systemctl status httpd.service 确认服务处于运行状态,执行 curl 127.0.0.1 确认本地访问能正常返回Hello World内容

内容的提问来源于stack exchange,提问作者Bhargav Thakar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 00:42:01