The 502 error occurred because supervisord wasn't restarting the hhvm server when it crashed. This is because they've deprecated the command I was using on the old server, which was stopping supervisord from running the process.
This should be fixed now.