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.