Have you symlinked the /etc/apache2/sites-available/foo.com to /etc/apache2/sites-enabled/000-foo.com.
The default apache configuration only reads virtual hosts from the sites-enabled directory and not sites available.
I am guessing that if you go to /etc/apache2/sites-enabled and type ls -la
you will only see a configuration for default site and not your new site. If this is the case then symlink your foo.com into the sites enabled directory as follows ln -s ../sites-available/foo.com 001-foo.com