Apache reverse proxy access control
You are using ServerName and ServerAlias for matching newsite.com.
You should NOT use for a reverse proxy configuration the directive:
<Proxy whatever>
You should use:
For apache 2.2:
<Location />
Order Deny,Allow
Deny from all
Allow from x.x.x.x
</Location>
For apache 2.4:
<Location />
<RequireAny>
Require ip x.x.x.x/255.255.255.0
Require ...
</RequireAny>
</Location>
After doing the Authz, you simply should do a ProxyPass, and the ProxyPassReverse (for the 302,301 redirects):
ProxyPass / http://newsite.com/
ProxyPassReverse / http://newsite.com/
Take in mind that with this you need to add newsite.com to your /etc/hosts or that dns should resolve the host in the url. You may also use IP address only but you should instruct the httpd server that Preserves the "Host:" header with:
ProxyPreserveHost On
had a similar problem today; Was related to how the wildcard matching is done, I think it uses the full URL: in my case I had
<Proxy /jira*>
Order allow,deny
Deny from all
</Proxy>
ProxyPass /jira https://myhost.com
and this did not work. Site was accessible from anywhere. I tried a couple of things and found a working version:
<Proxy *jira*>
So in your case try with
<Proxy http://newsite.com*>
to make sure apache matches that url.