[RUBY] 500 Interner Serverfehler tritt in der Rails-Produktionsumgebung auf
** Einführung **
Ich habe beim Erstellen eines Portfolios in Rails einen Fehler von 500 internen Servern festgestellt und möchte Ihnen mitteilen, wie das Problem gelöst werden kann.
Umgebung
- Rails 5.2.4
- macOS 10.15.5
- MySQL 5.7
- ruby 2.5.1
Fazit
Möglicherweise aufgrund der Asset-Pipeline
Status
Ich habe lange Zeit in der Entwicklungsumgebung entwickelt und die Anwendung wurde zu einem gewissen Grad fertiggestellt. Als ich versuchte, sie in der Produktionsumgebung in der Produktionsumgebung bereitzustellen, bekam ich einen ** 500 Internal Server Error ** und konnte ihn 3 Tage lang nicht lösen. ..
Was ich getan habe, um das Problem zu lösen
- Ändern der Einstellungen der conf-Datei des Webservers (Nginx)
=> Nicht gelöst
- Um die Steckdose herum, z. B. Löschen der Puma-Steckdose
=> Nicht gelöst
- Überprüfung anderer Teile, die möglicherweise verwandt sind, z. B. database.yml und Gemfile
=> Nicht gelöst
--Überprüfen Sie den Inhalt von Production.log
=> Überprüfen Sie die Asset-Pipeline auf Fehler
Das Lösungsverfahren habe ich gemacht
- Reinigen Sie zuerst die Asset-Pipeline mit "Rake Assets: Clobber"
- "Bundle Exec Rake Assets: RAILS_ENV = Produktion vorkompilieren", um die Asset-Pipeline vorab zu kompilieren
=> In meinem Fall wurde ich gebeten, Garn zu installieren, also installieren Sie es.
- Es wurde nach dem Neustart erfolgreich gestartet.
=> In meinem Fall wurde hier ebenfalls durchgeführt.
Am Ende
Zuerst entschied ich, dass es sich um ein Problem mit dem Webserver handelte, aber ich hätte von Anfang an auf Production.log schauen sollen, um den Fehler zu sehen. Es war eine sehr lehrreiche Fehlerbehebung.