无法通过 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
我想这只是 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