我正在尝试在ebs中迁移我的应用程序,因为它已被弃用,我以前的平台是:
在64位Amazon Linux / 2.9.8上运行的PHP 5.6
现在我要迁移到:
在64位Amazon Linux 2 / 3.0.3上运行的PHP 7.4
此平台使用Nginx服务器而不是Apache。
我能够部署我的应用程序,但是问题是我的.htaccess配置文件和我的.ebextensions配置文件一样已被弃用。因此我已经失去了例如获取干净的URL以及从http重定向到https的设置。
我试图通过放置相应的配置文件将apache配置转换为Nginx,但是显然它们没有作用。
我尝试了许多测试配置,但得出的结论是该平台没有读取我输入的配置。
例如,我尝试使用这种小的配置进行尝试,这应该允许我列出“ views”目录:
cleanurl.config
server {
location / views / {
autoindex on;
}
}
我尝试将其放在以下文件夹中。
“。ebextensions / cleanurl.config”
files:
"/etc/nginx/conf.d/cleanurl.conf":
mode: "000644"
owner: root
group: root
content: |
server {
location / views / {
autoindex on;
}
}
“。platform / nginx / conf.d / cleanurl.config”
server {
location / views / {
autoindex on;
}
}
但是我没有得到结果。当我指向一个文件夹时,我总是得到403 Forbidden。请帮忙。
预先感谢
答案 0 :(得分:1)
尝试之后,我可以通过以下方式解决该问题:
.platform/nginx/conf.d/elasticbeanstalk/cleanurl.conf
location/views/ {
autoindex on;
}
现在一切正常。
答案 1 :(得分:0)
我尝试了许多测试配置,但得出的结论是该平台没有读取我输入的配置。
在第一种情况下,这是因为您使用的配置文件用于 Amazon Linux 1 (AL1)。但是,您的环境是运行在64位 Amazon Linux 2 (AL2)上的PHP 7.4。
第二次尝试时,您应该在.platform/nginx/conf.d/
中使用the config files。但是,您正在使用*.config
扩展名。此错误的扩展名及其should be:
cleanurl.conf
您仍然可能还有其他问题,但是扩展名错误可以解释为什么忽略这些文件。