我想这只是AWS上的权限问题,但我对linux命令并不十分熟练。
我已将网站从其他服务器移至AWS,过了一段时间,除了PHP文件上传外,一切都运行良好。
我有一个用户区,用户可以将图片上传到他们的个人资料并执行一些活动,这在以前的服务器上运行良好。
但在AWS中它不会保存上传的文件。我的代码在我添加到文件上传的每个验证中都返回成功,但文件没有保存在服务器上。
我很确定这是一个权限问题,我已尝试使用该命令
chown ec2-user /var/www/html
并且还尝试授予root权限,但没有一个有效。
FTP工作正常,只是用户区域的上传是不起作用的。
你们中的任何人都可以帮我找到解决方案吗?
谢谢!
答案 0 :(得分:4)
使用PHP在服务器上上传文件时,必须授予Web服务器写入权限。
如果您使用的是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
答案 1 :(得分:-1)
在Aws中,你必须考虑很多事情。
1)您是否安装并启用了某些FTP程序,相应地使用户并为该用户提供了目录访问权。
(因为默认情况下,您只能对实例进行SFTP访问)
2)您是否在安全组中允许PORT 21(ftp)。