I have just moved a website from a shared host to a Google Apps site.
Is there a way I can setup 301 redirects on my Google Apps site so that old links (with a different URL) can be 301 redirected to the new location on the new site?
This would seem to be informative: 301 Redirect codes for google apps
I've never used Google Sites, but a bit of searching turned up this forum post, where a user named "larryd" writes:
"I wasn't familiar with Google sites when I made my post, so my 2 cents isn't worth much.
However, after logging in and creating a test Google site, I've found that if you log into your Google site and Edit your page, you can use the Insert->More gadgets menu option to open the gadget window. In the search box, enter url redirect and click the search button. A list of gadgets will appear; scroll to find the gadget named "Url Redirector" and click it. In the next window, click the "Select" button.
On your web page, you should now see a Google Gadget box with the "Url Redirector" loaded. Click the Properties link at the bottom. In the Setup Gadget window, enter the URL of your new site in the PageTo box and set the Timeout to what you want.
The PageTo entry must be the full URL, including the http:// prefix. If you do not enter a complete URL, your visitors will get a 404 error. If you want an immediate redirection, the Timeout setting should be 0, but this may make your Google web page inaccessible for editing in the future as entering the Google site will cause an immediate re-direct and may not give you enough time to hit the Edit button.
You will need to add this gadget to every web page on your Google site."
Note that these instructions are for redirecting from Google Sites to an external site, but, assuming that they work at all, I see no reason why they wouldn't work for redirects from one Google Sites page to another, too. That said, I have not tested these instructions. Use at your own risk.