amazon web services -在我的EC2实例上在EC2 -user下运行PHP


amazon web services - Run PHP under ec2-user on my EC2 instance

我有一个EC2实例托管我的网站。我正在尝试使用AWS SES PHP API,它已经安装在我的主目录(/home/ec2-user/)

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

问题是用户'apache'是PHP默认运行的,没有访问主文件夹的权限。

我应该添加'apache'到某种可以访问主文件夹的组,或者我应该在我的'ec2-user'下运行PHP ?

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

最好的选择是在你的web根目录下安装PHP SDK。您可以使用composer轻松地做到这一点。

将web文件保存在web根目录中。不要绕过默认的安全限制,除非您知道自己在做什么,并且有很好的理由这么做!