In case anyone else stumbled upon this thread, I've always thought running a VirtualBox VM in Bridged Networking mode still did not allow the VM instance to be externally accessible.
However, then I read this ServerFault thread and realised the bridge is a _new interface_, and hence you must either bind directly to it or bind to all interfaces in order to get your VM to become externally accesible!
It's much easier when it's just another IP address! :)
And yeah, the reason something like AppEngine or Django wouldn't work is that they, by default, bind only to loopback/127.0.0.1, and are only accessible from the host on which they're running, as a security precaution.
However, then I read this ServerFault thread and realised the bridge is a _new interface_, and hence you must either bind directly to it or bind to all interfaces in order to get your VM to become externally accesible!
http://serverfault.com/questions/206498/virtualbox-bridge-ne...
Fantastic!