如何配置EC2为支持PHP的简易网站?AWS新手求助文件定位与修改
解决Elastic Beanstalk PHP环境文件位置与修改问题
嘿,作为AWS新手碰到这个问题太正常了!我来一步步帮你理清:
一、找到EC2实例里的网站文件位置
Elastic Beanstalk默认的PHP环境,运行中的网站文件默认存在EC2实例的本地文件系统里,路径是:
/var/www/html/
你看到的那个默认PHP示例,比如index.php就藏在这里。
二、怎么连接EC2实例并修改文件
要访问这个目录,你需要通过SSH连接到你的EC2实例:
- 先在AWS控制台找到对应的EC2实例:
- 可以直接去EC2控制台,通过实例名称(和Elastic Beanstalk环境名关联)找到目标实例;
- 或者从Elastic Beanstalk环境的「配置」→「实例」选项卡里,找到实例ID,再跳转到EC2页面。
- 用SSH命令连接实例(确保你有创建环境时用的密钥对.pem文件):
- 如果是Amazon Linux 2系统,命令是:
ssh -i "你的密钥文件名.pem" ec2-user@<实例公网IP/公网DNS> - 如果是Ubuntu系统,把
ec2-user换成ubuntu就行。
- 如果是Amazon Linux 2系统,命令是:
- 连接成功后,切换到网站目录:
这里就能看到所有示例文件了,比如用cd /var/www/html/ls命令查看,用nano index.php就能编辑修改,保存退出后刷新浏览器就能看到变化。
三、为什么文件不在S3桶里
Elastic Beanstalk的S3桶主要用来存储部署包(比如你上传的代码zip)、环境配置、日志文件这些,而运行中的网站代码是直接部署到EC2实例的本地磁盘上的,所以你在S3里找不到正在运行的示例文件。
四、更规范的代码修改方式(避免修改丢失)
直接修改EC2实例里的文件有个坑:如果环境扩容、重启或者重新部署,你的修改会丢失!更稳妥的做法是:
- 本地电脑上编写好你的PHP脚本(比如替换默认的
index.php); - 把脚本文件打包成zip包(注意:不要把文件放到文件夹里,直接让文件在zip的根目录);
- 回到Elastic Beanstalk控制台,找到你的环境,点击「上传并部署」,选择这个zip包,等待部署完成后,刷新浏览器就能看到你的自定义代码了。
内容的提问来源于stack exchange,提问作者pizzafilms




