Wie füge ich php.ini Direktiven auf AWS Elastic Beanstalk hinzu?

21

Ich möchte diese PHP-Einstellungen zu meiner Elastic Beanstalk-Umgebung hinzufügen:

upload_max_filesize = 64M
post_max_size = 64M

Diese Optionen können nicht mit option_settings festgelegt werden in .ebextensions:

Namespace                                    | Extend
---------------------------------------------|-------
aws:elasticbeanstalk:application:environment | Yes
aws:elasticbeanstalk:container:php:phpini    | No

Wie kann ich php.inieinem Elastic Beanstalk-Container benutzerdefinierte Einstellungen hinzufügen ?

Benjamin
quelle

Antworten:

43

Am saubersten ist es, eine .ebextensions-Konfigurationsdatei in meinem Projektarchiv zu verwenden:

Beispieldatei .ebextensions/project.config:

files:
  "/etc/php.d/project.ini" :
    mode: "000644"
    owner: root
    group: root
    content: |
      upload_max_filesize = 64M
      post_max_size = 64M

Bei der Bereitstellung der Anwendungsversion wird eine benutzerdefinierte Konfigurationsdatei in das php.dVerzeichnis geschrieben, die alle php.iniEinstellungen überschreibt .

Benjamin
quelle
Bedeutet dies, dass die /etc/php.d/project.iniDatei automatisch erstellt wird, wenn die neue App-Version bereitgestellt wird?
user1448031
@ user1448031 Ja, es wird automatisch erstellt!
Benjamin
Gilt es auch für Ubuntu. Ich habe das gleiche Problem.
Alyssa Gono
Ich habe es versucht und meine Laravel-App ist abgestürzt. Irgendwelche Gedanken darüber, was schief gelaufen sein könnte?
James Morrison
Egal, es hat funktioniert, danke! Mein Problem hatte nichts damit zu tun - aus irgendeinem Grund funktioniert eb deploy nicht, aber das Hochladen eines Reißverschlusses ist eine ganz andere Sache. Sobald ich es manuell bereitgestellt habe, hat es wie ein Zauber funktioniert!
James Morrison