我想为我的symfony elastic beanstalk PHP应用程序实现基本的http auth。我找到了这个链接,其中解释了另一个php项目,并根据我的symfony需求对其进行了一点调整。
files:
"/etc/httpd/conf.d/allow_override.conf":
mode: "000644"
owner: ec2-user
group: ec2-user
encoding: plain
content: |
<Directory /var/www/html/www/ />
AllowOverride AuthConfig
</Directory>
"/etc/httpd/conf.d/auth.conf":
mode: "000644"
owner: ec2-user
group: ec2-user
encoding: plain
content: |
<Directory /var/www/html/www/ />
AuthType Basic
AuthName "Myproject Prototype"
AuthUserFile /etc/httpd/.htpasswd
Require valid-user
</Directory>
"/etc/httpd/.htpasswd":
mode: "000644"
owner: ec2-user
group: ec2-user
encoding: plain
content: |
admin:lala
问题是:我不确定要在那里设置什么目录。我试过了:
- /var/www/
- html/www/ /var/www/
- html/www /
- var/www/html/ /
- var/www/html
但这些都不起作用。我得到的只是一些错误503。
当你使用Symfony时,你的目录将是:/var/www/html/web/
您还必须将"允许覆盖"设置为"全部"。您的文件将如下所示:
files:
"/etc/httpd/conf.d/allow_override.conf":
mode: "000644"
owner: ec2-user
group: ec2-user
encoding: plain
content: |
<Directory /var/www/html/web/>
AllowOverride All
</Directory>
"/etc/httpd/conf.d/auth.conf":
mode: "000644"
owner: ec2-user
group: ec2-user
encoding: plain
content: |
<Directory /var/www/html/web/>
AuthType Basic
AuthName "Myproject Prototype"
AuthUserFile /etc/httpd/.htpasswd
Require valid-user
</Directory>
"/etc/httpd/.htpasswd":
mode: "000644"
owner: ec2-user
group: ec2-user
encoding: plain
content: |
admin:$apr1$e2ahR98m$oQ9tE8rqr/l5XPr3cCZYK1