Pinging both www.example.com and example.com show that my ip address is correct
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName example.com
ServerAlias www.example.com example.com
DocumentRoot /var/www/example.com/public
SetEnv APPLICATION_ENV live
</VirtualHost>
Accessing www.example.com works fine, however when I access example.com I see the default it works message (which is storred in /var/www/index.html)
Pinging both www.example.com and example.com show that my ip address is correct, what other steps can I do to figure out the root of the problem?
Try separating your ServerName's.
(Although as the first comment says, you shouldn't need to have a serveralias for example.com as it's your server-name)
Are there any other VHosts? What's the default server-name in httpd.conf (If it was example.com, that would override the vhost, I think)