Ich habe kürzlich eine App bereitgestellt und einen internen Serverfehler erhalten, weil die Produktion secret_key_base fehlt. Nach stundenlangem Testen gelang es mir, dieses Problem mit zwei Methoden zu lösen:
Methode 1:
Ich habe mit einen neuen secret_key generiert rake secret
und durch <%= ENV["SECRET_KEY_BASE"] %>
in ersetzt secrets.yml
. Habe die App erneut bereitgestellt und dieses Mal hat es funktioniert. Aber ich denke, dass diese Methode falsch ist.
Methode 2:
Ich habe mit einen neuen secret_key generiert rake secret
und ihn zu environments/production.rb
like hinzugefügt config.secret_key_base = 'd1f4810e662acf46a33960e3aa5bd0************************
, ohne ihn zu ändern secrets.yml
(Standard ist production: <%= ENV["SECRET_KEY_BASE"] %>
). Habe die App erneut bereitgestellt und es funktioniert einwandfrei.
Meine Fragen:
Lösung des Problems
Wenn Sie sich auf einem normalen Ubuntu-Rechner befinden, geben Sie einfach export SECRET_KEY_BASE=" <<< output from rake secret here >>> "
Ihre ~/.bashrc
.
Führen Sie source ~/.bashrc
die App aus und starten Sie sie neu.
Keine Kommentare:
Kommentar veröffentlichen