Define IP canonicalization in SEO and How to Fix and Check it


Now, it is the time when SEO is going to change then you also need to change you techniques and proper on page optimization of your website. From a SEO point of view it is very important to do on page optimization of your website. Today Serpwizard is going to discuss with you about the Canonicalization because it can help you to proper on page of your website.

What is IP CANONICALIZATION?
When a search engine index a page of a website than it try to get information as much as it is possible. It includes IP address also of you connection. IP canonicalization saves your website to less the chances of duplicate content.

What is duplicate Content?
Duplicate content means that you are copying content from any other website and posting it on your website. This thing can get penalize by the search engine. Duplicate content posts many issues for search engine crawlers. Crawlers of the search engine are hard to show duplicate content on the search engine result pages. Crawler can understand which content is unique and which is copied from the other website. Sometimes search engine mistakenly label you website as duplicate content. It can be a problem if do not fix it.

SEO and IP canonicalization
From the SEO point of view IP canonicalization is very important for a website. When you are having a website which has some inner pages also and the content on the other inner page is same with another URL on your website then it can be a problem for your website.
For example when you are typing in your address bar a website name without www than it will redirect you on the same website but the working of the search engine is different. According to the search engine it can count as the error in your website. So you can fix this problem with the help of the help of 301,302,307 redirects.
The main objective of the IP canonicalization is to redirect the WebPages which are labeled as the duplicate content. For example A 301 redirect is a permanent redirect from a URL to another URL. You can compare it as changing the address in the post office. It is same like that process. By using this redirect you will not get penalize by the search engine.

Here are the quick bullets of why it is important:
  • Prevents multiple URLs for same content (on-site)
  • Prevents the dilution of link juice/equity to same content URLs
  • Prevents search engines from choosing "the best" URL over the one you actually want in the SERPs
So, how do you actually implement canonicalization on your site?
  1. 301 Redirects
  2. Link Tag using Rel Canonical
301 Redirects
301 redirects are an SEOs/site owners bread-and-butter when it comes to URL control.  301 refers to the status code for the requested URL that is passed back from the server. 301 is a permanently moved page response. It allows for the proper passing of link juice to the new location and for the automatic redirection of a site visitor or bot to the proper URL.
The implementation of 301 redirects can either be set at the server level or coded into the page that you would like redirected. Setting a 301 at the server level is the preferred method but it always pays to have a few extra tricks up your sleeve.
Apache 301 Redirect Implementation
In the Apache server environment there is a file called an htaccess file (named .htaccess). This file is what will allow you to setup your 301 redirect commands and can easily be edited with any text editor ie. notepad. The .htaccess file will reside in the root directory of your domain.
The simplest form of a 301 redirect command is:
Redirect 301 /oldpage.html http://www.site.com/newpage.html
 The four elements that make up this command are:
  1. State the type of .htaccess command it is: "redirect"
  2. State the status code that should be set: "301"
  3. State the existing/old page that this applies to:"/oldpage.html" (exclude domain name here but include beginning slash & directory structure if applicable)
  4. State the new page to be redirected to: "http://www.site.com/newpage.htm" (include entire URL)
In the Whiteboard Friday video, Danny points out a common canonicalization issue of having both your non-www and www URLs active. This can easily be fixed in your .htaccess file by using mod_rewrite functionality.
Here is what you will add to your .htaccess to fix the non-www to www canonicalization issue:
RewriteEngine on
rewritecond %{http_host} ^site.com [nc]
rewriterule ^(.*)$ http://www.site.com/$1 [r=301,nc]
This command will execute a 301 redirect for any visitor or bot that attempts to acccess a non-www version of a page on your site and send them to the www version of that page. If this is not working, contact your hosting company and make sure that the mod_rewrite module has been installed.
Another real common issue that you run into to canonicalization is the trailing slash versus the index file URL. So, this canonicalization issue refers to these two URLs being the same content:
http://www.site.com/directory/ vs. http://www.site.com/directory/index.html
This issue can be fixed with one line in your .htaccess file using a redirectmatch command. This is very similar to how the simpe 301 redirect works but will match any instance where the redirect is supposed to occur sitewide. Here is what this one looks like:
RedirectMatch 301 ^/(.*)/index\.html$ http://www.site.com$1
RedirectMatch and mod_rewrite really show the strength that .htaccess commands have. So, as a caveat, be careful in there as changes to the .htaccess file can and will impact the entire site.
Windows IIS 301 Redirect Implementation
In the Windows server environment you have a GUI that has helped to simplify some of the tasks of managing a web server. To handle 301 redirection on a Windows server follow these steps:
  1. In IIS Manager you want to navigate to the site, directory, file you want to redirect then right-click and select Properties.
  2. In the Properties you want to find the Directory tab (sometimes labeled Home or Virtual Directory)
  3. In the top set of radio buttons under "Content for this source should come from" select A redirection to a URL
  4. In the Redirect to: text field enter the full path of the new page URL
  5. In the bottom checkboxes be sure to check both the "The exact URL entered above" and "A permanent redirection for this resource"
  6. Finalize it with the Apply button
Coded 301 Redirects
Coded 301 redirects will accomplish the same thing as a server level redirect. A coded redirect occurs physically in the source code of the redirecting page on the website. When requested by a visitor or bot the code will pass back modified page headers that contain the commands to do the 301 redirect. The actually code varies from language to language ie. PHP, ASP, JSP, etc. but the common function you are looking to execute is a header function.
Coded 301 redirects should be used when you do not have privileges to make redirects at the server level.
Here are examples for some of different languages:
PHP
<?Header( "HTTP/1.1 301 Moved Permanently" );
Header( "Location: http://www.site.com/" );?> 
ASP
<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location","http://www.site.com/"
%> 
JSP
<%
response.setStatus(301);
response.setHeader( "Location", "http://www.site.com/" );
response.setHeader( "Connection", "close" );
%> 
ColdFusion
<cfheader statuscode=”301″ statustext=”Moved permanently” />
<cfheader name=”location” value=”http://www.mysite.com/new-location-for-content/” />
When coding 301 redirects into pages be sure that it is the very first code that is executed on the page. Since you are modifying the headers through the code 

Link Tag using Rel Canonical
In February 2009, Google announced that they were now accepting a new form of the link tag that would help website owners handle canonicalization issues. The new element was rel=canonical. Here is an example:
<link rel="canonical" href="http://www.site.com/correct-location/" />
This tag was introduced to help simplify the canonicalization process for search engine bots. The link tag could be added to the <head> section of any page and specify the correct URL for the content on page.
So, if a search engine bot accessed your index.html page and finds a canonical link tag with the href set to the trailing slash version it will signal to the bot that the trailing slash url is the actual URL for this content. This then tells the search engine to evaluate the trailing slash URL for ranking in the serps and passes all link juice to the trailing slash pages.
The link tag however will leave how the site functions alone. It does not redirect users and it will also not stop anyone from linking to the "incorrect" URL in the future. It is a tag specifically designed to be used by bots and will leave both versions of a page active on a site. To completely remove the duplicate version you will need to rely on 301 redirects.

Canonicalization is an issue that every site faces and there are several ways to resolve some common issues. Choosing the "correct" implementation depends on technical expertise and access to code but is something that you are not doing (but should be). 



What is .htaccess? & Where I have to place it?

The .htaccess file is a hidden text file that allows you to control the way visitors are able to access your site. Some common uses of the .htaccess file would be restricting access to certain files, or redirecting URLs.

Please don't think more about file name, no file name required for this -  it's simply .htaccess 
(even i wasted more time on giving file name finally found that it's simply .htaccess)

it's should be in root folder of you website

Ex: in SEO search engines will treat www.domainname.com &  domainname.com are different to avoid that
we use .htaccess file. More..


Multiple Sitemaps and Sitemap Index

The Sitemap has certain limitations. For example, it cannot contain more than 50 000 URLs and cannot be bigger than 10 MB. This is why if you plan to create a website with multiple subdirectories and Sitemaps, you will have to use Sitemap Index.
The Sitemap index allows you to include several Sitemap files under one file called Sitemap index. It uses almost the same syntax but instead of including your pages URLs, you will have to add the URLs to your Sitemaps.
Below, you can find a sample code of a Sitemap index.
<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<sitemap>
<loc>http://www.domain.com/sitemap1.xml.gz</loc>
<lastmod>2004-10-01T18:23:17+00:00</lastmod>
</sitemap>
<sitemap>
<loc>http://www.domain.com/sitemap2.xml.gz</loc>
<lastmod>2005-01-01</lastmod>
</sitemap>
</sitemapindex>
As you can see the Sitemap index file uses the following XML tags:
  • loc
  • lastmod
  • sitemap
  • sitemapindex
The <loc> and the <lasmod> tags are basically the same as in the normal Sitemap file. The <sitemap> tag encapsulates information about an individual Sitemap. The <sitemapindex> tag provides information about all of the Sitemaps in the file.Be advised that the Sitemap files can be only files located under the same domain or subdomain and should be UTF-8 encoded as well.
It is strongly recommended that you place your Sitemap into the root directory of your web server. The location of a Sitemap file determines the set of URLs that can be included in it. A Sitemap file, for example, located under a subdirectory can include links of all pages in this subdirectory, but not ones above it.

How To Redirect Your-Domain.com to www.Your-Domain.com

In the context of the directories at the server, http://your-domain.com is the root folder. The www part in http://www.your-domain.com is a subdirectory or a subdomain which usually redirects to the root folder. The “www” prefix has no meaning in the way the main Web site is shown. The “www” prefix is simply one choice for a Web site’s host name. It is mostly used because a host name for the web-server is often ‘www’.
If you are using an Apache server to host your site, then the best way to redirect visitors from http://domain.com to http://www.domain.com is by using a .htaccess file.
.htaccess file is the one that has the configuration settings for the particular directory it is placed in. If you are using your hosting provider’s file manager menu then in many cases you may not be able to see the .htaccess file in your root menu. In that case you can download FileZilla, an excellent open-source FTP client. After locating your .htaccess file and downloading it, it is a good idea to make a copy(with original settings) of it first as a backup.
Now to redirect from non-www to www enter the following code in the top of the .htaccess file:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^your-domain.com [NC]
RewriteRule ^(.*)$ http://www.your-domain.com/$1 [L,R=301]
Just type in your domain name instead of “your-domain”.
To do the vice-versa, ie to redirect from www to non-wwwenter the following code instead in the top of the .htaccess file:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^your-domain.com\.com
RewriteRule (.*) your-domain.com/$1 [R=301,L]
Now, If you are using WordPress as your site’s blog software then make sure, that in the settings menu, you change the “WordPress Address (URL)” and “Blog Address (URL)” accordingly. Otherwise you will get a “This site was moved to this location” error!