2016-08-16 81 views
1

我有一个EC2实例托管我的网站。我试图使用已安装在我的主目录(/ home/ec2-user /)中的AWS SES PHP API在我的EC2实例的ec2用户下运行PHP

我的web服务器(/ var/www/html /)需要引用凭证文件, API本身都存储在主文件夹中。

问题在于用户'apache'默认情况下运行的PHP不能访问主文件夹。

我应该向某种可以访问home文件夹的组中添加'apache',还是应该在我的'ec2-user'下运行PHP?

+0

尝试向位于html目录内的主目录添加符号链接。 – error2007s

+1

**致密选民:**这个问题直接涉及用于编程的工具,它直接与PHP相关并包含Stackoverflow积极支持的标签。 –

回答

3

这些种类的服务器限制是故意做出的。在一个完美的场景中,运行你的web服务器的用户(你的实例中的apache)应该只能访问web根目录中的文件。这样做是为了确保恶意脚本无法利用您的服务器,例如安全性。如果您已将apache访问权限授予ec2用户主目录,则可以利用此操作访问/home/ec2-user/.ssh及其内容(例如)。

您的最佳选择是在您的Web根目录中安装PHP SDK。你可以使用作曲家轻松做到这一点。

保留Web根目录中的文件。除非你知道你在做什么,并且有充分的理由去做,否则不要绕过默认的安全限制!

+1

谢谢罗比,为我清除它:) –