无法通过 PHP 文件上传将文件上传到 AWS

Cant' Upload files to AWS through PHP file upload

我想这只是 AWS 上的权限问题,但我对 linux 命令不是很精通。

我已将网站从另一台服务器移至 AWS,一段时间后,一切 运行 完美,除了 PHP 文件上传。

我有一个用户区域,用户可以在其中将图片上传到他们的个人资料并执行一些活动,这在以前的服务器中运行良好。

但在 AWS 中它不保存上传的文件。我的代码 return 我添加到文件上传的每次验证都成功,但文件没有保存在服务器上。

我很确定这是一个权限问题,我已经尝试过命令 chown ec2-user /var/www/html 还尝试授予 root 权限,但 none 成功了。

FTP可以正常使用,就是用户区上传的不行。

你们能帮我找到解决办法吗?

谢谢!

在 Aws 中,您需要考虑很多事情。

1) 您是否安装并启用了某些 FTP 程序,相应地创建用户并授予该用户目录访问权限。

(因为默认情况下您将只有 SFTP 访问实例)

2) 您是否允许安全组中的端口 21(ftp)。

使用PHP在服务器上上传文件时,您必须授予网络服务器写入权限。

如果您使用的是 apache,您可以运行以下命令:

chown apache:apache /var/www/html
chmod 775 /var/www/html

此外,整个树结构必须至少是可读的。你应该有这样的东西:

drwxr-xr-x root:root /var
drwxr-xr-x root:root www
drwxr-xr-x apache:apache html