微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我不能在Elastic Beanstalk上编写带有.ebextensions的文件?

如何解决为什么我不能在Elastic Beanstalk上编写带有.ebextensions的文件?

我无法在/etc/httpd/conf.d/elasticbeanstalk中写入带有.ebextensions的文件。我需要编写一个vhost.conf来添加子域。我在尝试许多方法: 用“ files:...”写入文件

files:
  "/etc/httpd/conf.d/elasticbeanstalk":
    mode: "000777"
    owner: root
    group: root
    encoding: plain
    content: |
      NameVirtualHost *:80
  
      <VirtualHost *:80>
        ServerName api.domain.com
        DocumentRoot "/var/app/current/api/"
        <Directory "/var/app/current/api">
          AllowOverride All
          Require all Granted
        </Directory>
      </VirtualHost>

然后我尝试将此文件写入临时目录,并使用命令将其复制到/etc/httpd/conf.d/elasticbeanstalk

files:
  "/home/ec2-user/vhost.conf":
    mode: "000777"
    owner: root
    group: root
    encoding: plain
    content: |
      NameVirtualHost *:80

      <VirtualHost *:80>
        ServerName api.domain.com
        DocumentRoot "/var/app/current/api/"
        <Directory "/var/app/current/api">
          AllowOverride All
          Require all Granted
        </Directory>
      </VirtualHost>

container_commands:
  00_chmod:
    command: "sudo chmod 777 /etc/httpd/conf.d/elasticbeanstalk"
  01_rewrite:
    command: "sudo mv -f /home/ec2-user/vhost.conf /etc/httpd/conf.d/elasticbeanstalk/vhost.conf"
  02_apache:
    command: "sudo apachectl restart"

也不起作用。所以我用SSH检查了ec2实例上的一些信息。该文件是在/ home / ec2-user中创建的,而不是在apache文件夹中创建的。我究竟做错了什么 ?没有chmod目录(SSH),我无法在/etc/httpd/conf.d/elasticbeanstalk中创建文件

我使用的是运行在64位Amazon Linux 2 / 3.1.1上的PHP 7.4(代理apache不是Nginx),我在其他应用程序的其他实例上具有完全相同的目录.ebextension和相同的文件,但是在运行的PHP 7.2上64位Amazon Linux / 2.9.10,它正在这一版本上工作!那两个env之间有什么区别?

编辑:日志中没有错误,所有命令均已执行!

谢谢您的帮助!

解决方法

好的,我找到了解决方案!在平台3.X上,我们必须将此配置放入.platform文件夹中,而不再放在.ebextensions文件夹中。这可以帮助您:https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.migration-al.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?