Host headers are additional information sent by a browser to a web server in its request. Behind the scenes, the browser's request for http://site1/index.html
really looks like this:
GET /index.html HTTP/1.1
This allows for name-based hosting, where multiple websites can be hosted on a single IP address.
As for your error, I am assuming you are still trying to get to site2. In that case, I would check the permissions on the directory
E:/Programs/Apache Server 2.0/Apache2/skylight_studios
The Apache user needs to have read and execute permissions on that folder. The Apache user is normally "apache" or "nobody" on *nix systems, not sure on Windows. See if you have either of those users. If not, the Apache installation probably created a default site in E:\Programs\Apache Server 2.0\Apache2, maybe at E:\Programs\Apache Server 2.0\Apache2\var\www\html. If so, check the permissions on that directory to get you going in the direction.