Nachdem ich meine Sinatra-Anwendung mit ruby app.rb
und foreman start
gestartet habe, kann ich nicht mit localhost und dem entsprechenden Port auf meinem Host-Rechner auf meine Anwendung zugreifen. Ich bin auch in der Lage, curl
auf die Anwendungen von innerhalb der Shell auf Gastmaschine, während auf dem Host-Rechner die curl
Anfrage fehlschlägt. Soweit ich weiß, sollte auf dem Gastcomputer keine Firewall installiert sein, da ich das Vagrant Ubuntu-Image verwende.
Mein Vagrantfile ist wie folgt:
%Vor% Standardmäßig wird im Entwicklungsmodus ausgeführt. Sinatra hört nur localhost , nicht zu 0.0.0.0
(Diese Änderung wurde aufgrund von Sicherheitsaspekten vorgenommen.)
Um Anfragen von jeder Schnittstelle zuzulassen, fügen Sie entweder set :bind, '0.0.0.0'
zu Ihrer App-Datei hinzu oder starten Sie Ihre App mit der Option -o
, z. ruby myapp.rb -o 0.0.0.0
.
Sie können dies möglicherweise auf die tatsächliche Adresse festlegen, die dem Gast zugewiesen wurde, aber ich weiß nicht, ob es sich lohnt.