Most people who link to your site are likely to link to
yourdomain.tld so having that page point to a 303 redirect may be wasting some PR (though perhaps trust and authority still get passed to the domain) as the 303 will not pass on PR, and will likely cause
http://yourdomain.tld to just be unindexed.
That said, there are a lot of sites that use this approach (having
domain.tld dynamically redirect to
*lang*.domain.tld). One way to do it without wasting PR would be to:
domain.tld simply be a language-selection page that links to all the different language subsites.
- When a user goes to a particular language subsite, save (via cookie) that as their language preference.
- Next time the user comes to
This way all of your
domain.tld PR flows to each of your language subsites, but you still auto-redirect users to the language they last visited.
However, this is still considered cloaking as return users will see the "language selection" page in the SERP and instead end up at one of the language subsites. So that might be a reason to stick with your current setup and simply have search users go directly to one of the subsites. Google is pretty good at determining which language the user is looking for anyway (based on the query as well as which Google portal the user is searching from).