Some of my sites have different PR with and without 'www' prefix. How does this occur ? How to fix it ?
It's because www.domain.com is a different document than domain.com so 301 one to the other to avoid this problem and duplicate content.
Is it always the case that people get different PR with or without "www"? I just checked for our website and both versions have PR3 Yes this is something I don't understand, how come it's different documents? aren't they both using the index.html page? I've seen that on a website where "domain.com" was showing a page and "www.domain.com" showed another one (an underconstruction page), can somebody explain this please.
The same page but on a different URL. The URL makes it a different document. The difference in PR is down to the different backlinks. Having both means you're spreading PR over two documents. 301 One to the other and you could find yourself having a PR4 instead of a 2 and a 3. Your construction page example depends on the setup of the serves. On Apache, most hosts set domain.com as a serveralias of www.domain.com but technically they're far from the same. You can have an entirely different site on each. www. is Technically just a subdomain, just like ftp. or search. etc. Blogspot.com is a good example.
I think Your right, Check out johntp.com for example http://johntp.com has a PR of 5 whereas http://www.johntp.com has a PR of 3
I don't know much about these but it's for redirection, i.e you redirect domain.com to www.domain.com Anyways you can still check it on google to understand it better
301 is a server code sent out in the response header that the requested URL has permenantly moved to the new address, which the browser/bot is being redirected to. It is kind of like the post office automatically forwarding your mail if you move. By using 301 redirects, you are telling search engine bots that the page is no longer found at the requested URL and that it can now be found at the new URL. Because of the fact that SEs treat www and sans-www domains as two different websites, it is best to configure 301 redirects from one to the other from the very start when a site is set up, however, doing it later can still improve the back link issue over time.
What rubeina said. 301 Is a http status code for 'permanently moved'. Like 404 is 'file not found' and 302 is 'temporarily moved'. There's many more, like the dreaded 500 'server error'. It's a way of telling the browser, or search engine spider in this matter, what has happened to the document. This 'telling what's happened' is done in the .htaccess file or in your http.conf file. Can also be done in individual files with the header() function in PHP for example.