Rails 4.2 and Vagrant

I have a Rails 4.1 app and I use Vagrant for developing it. Everything has been working fine but then I bumped the version to 4.2 and it seems to have broken somewhere. I can start the server just fine and get a 200 response when curling localhost from the VM but when trying to access from a web browser on the host I only get a blank page and nothing in the logs. I don’t think the requests are actually going through to the VM but I have no errors or anything to help diagnose. This is repeatable for another person on my team and I’ve also tried with a completely vanilla application.

Has anyone experienced this or can help point to where I should look?

Assuming you are starting the server using rails server is there anything in the terminal window when you fetch the page? If not then I think the request must be being intercepted by something else on your system.

Did you use rake rails:update to update the app? See

Colin

when trying to access from a web browser on the host I only get a blank page and nothing in the logs. I don't think the requests are actually going through to the VM but I have no errors or anything to help diagnose.

Sounds like you’re running into a change in Rack 1.6:   Really pesky when Rails 4.2.0.beta1 listening on http://localhost:3000 in development · Issue #16578 · rails/rails · GitHub

While it’s technically not our change, it probably merits a mention in our upgrade guide / incompatibility list.

Matthew

His Colin,

There’s nothing in the terminal window during the request. I didn’t use the update task, just updated in the Gemfile.

Evan

Just wondering if you’ve solved this issue. I’m experiencing the exact same problem.

It seems to be the issue with rack and the host that it’s binding to. Try running the Rails server and bind it to 0.0.0.0

Evan