I have an application that when you go to http://website.com
it automatically redirects to http://website.com/en
since no language was detected.
Is it neccesary to use a redirect 301 for this redirection? What about for google indexing? Will my google indexing be affected by this redirection?
This is a complex set of decisions, and Google is pretty secretive about how page rank works.
I'm assuming you have a multilingual site - there's http://website.com/en
, http://website.com/es
, http://website.com/fr
etc. I'm also assuming you want Google to index all those sites, and recognize them as being in those languages.
You might start by reading what Google has to say.
A 301 is a permanent redirect. It says "whoever you are, go here instead of there". That's bad for search engine crawlers - they aren't "English", or "Spanish". So, work out what you want the user experience to be. Some people say "show a landing page, ask the user to choose which language they want"; others say "use browser language detection and automatically redirect". If you redirect, do it via a 302. Maybe do both - redirect if you're certain, show a landing page if you're not.
For SEO, make sure you have a sitemap that allows Google to find all content in all languages, and link different language versions to each other so Google can understand the relationship.