Each SEO specialist faces necessity of using the 301 redirect which becomes important if you are going to change URLs of your pages, remove duplicate content, redirect users to another domain, and so on. You can find the most popular patterns of the 301 redirect in this article.

Since Apache is the most widespread web server, all templates listed in this article will concern it. To be more specific, templates should be prescribed in a root file .htaccess. Make sure that the module mod_rewrite (a file httpd.conf) is connected to Apache before using of the 301 redirects sample.

To use 301 redirect, first you need to specify directives necessary for operation of the module mod_rewrite in the first few lines of .htaccess file:

Options +FollowSymLinks
RewriteEngine On
RewriteBase /

Let`s consider rules of typical forwarding.

Redirect from an address with www-prefix to an address without www

Get lost in the search results?

Let Promodo experts help your website index better by optimising your pages, improving your content, and enhancing your linking strategy.

By clicking this button you agree to our terms & conditions

To redirect all pages with www ( to pages without www (, use the following template:

RewriteCond %{HTTP_HOST} ^$ [NC]
RewriteRule^(.*)$$1 [R=301,L]

Or a simplified version:

RewriteCond %{HTTP_HOST} ^www.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

Redirect from an address without www to an address with www

You can 301 from pages without www ( to pages with www ( in almost the similar way as in the previous example. Just change the position of www:

RewriteCond %{HTTP_HOST} ^$ [NC]
RewriteRule^(.*)$$1 [R=301,L]

Or an alternative simplified variant:

RewriteCond %{HTTP_HOST} !^www.(.*) [NC]
RewriteRule ^(.*)$ http://www.%1/$1 [R=301,L]

It is also worth mentioning that sometimes the rules work even if dots are not screened with a backslash, but don`t abuse it, because this can lead to errors at some servers.

Redirect from an index page to a site root

This type of redirect often causes problems if you use CMS, which redirects all site requests to an index page. Adding directives to .htaccess file will lead to a cycle of endless redirects. The easiest way is to insert a small snippet to the top of an index page (egindex.php):

if($_SERVER[‘REQUEST_URI’] ==  ‘/index.php’) {
header(“Location: /”,TRUE,301);

Thus, addresses are compared while requesting an index page, and if the requested address is, for example,, then the condition is triggered and redirection to a root of the site is performed. If a site doesn’t redirect all requests to index.php, you can use the following template for mod_rewrite:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9} /index.php HTTP/
RewriteRule ^index.php$ [R=301,L]

The same redirect can be used for other extensions of the main page as well, such as index.html, or, for example, index.phtml.

Redirect from a subdomain to a subfolder

This kind of 301 redirect is needed to redirect multiple similar pages from a sub-domain to new addresses which have a certain pattern. This problem often arises, for example, when some language versions of a site are available on a subdomain and in a subfolder of your main domain.

For example, you have a page with an address and we need to redirect it to a duplicated page We use the following template (a file prescribed for .htaccess is a subdomain) for this purpose:

RewriteCond %{HTTP_HOST} ^ [OR]
RewriteCond %{HTTP_HOST} ^
RewriteRule^(.*)$$1 [L,R=301

Redirect from a domain subfolder to a subdomain

If it is necessary to redirect a user from a subfolder to a subdomain, use the following template:

RewriteCond %{HTTP_HOST} ^$ [NC] RewriteRule ^/eng/(.*)$$1 [R=301,L]

Redirect from one file extensions to other

When you change an engine or while changing a static version of a site to dynamic, you should leave pages available by old addresses. For this purpose it is necessary to redirect old addresses of pages to pages with new extension.

RewriteRule^(.*).html$ $1.php [R=301,L]

Redirect to another site

While creating a new site, it is sometimes necessary to make it as a basic mirror, redirecting users from an old domain to a new one. You may use a template below:

RewriteCond %{HTTP_HOST} ^
RewriteRule^(.*)$$1 [R=301,L]

All pages of an old domain will be redirected to corresponding pages of a new one.

301 redirect of dynamic pages

When upgrading a dynamic site and creating CNC addresses a need to redirect old pages with the ID parameters to a new CNC often appears. For example, to redirect a page from to a new page, use the following structure:

RewriteCond %{QUERY_STRING} ^id=13$ RewriteRule ^/page.php$ [L,R=301]

Redirects of Cyrillic and RF domains

All of the rules above are valid for domains written in Cyrillic. However, if you create a redirect it is better to replace Cyrillic domains with so-called Punycode. You can use one of online converting services by WhiteWhois.

The obtained encoded domain name can be easily applied to any template of the 301 redirect, as described above.

Despite the abundance of different templates and ready-made solutions, the best solution independent exploration of mod_rewrite syntax principles and its directives. Understanding basic structures allows you to easily write redirects yourself, as well as read and correct the existing .htaccess files.

Leave a Reply

Notify of

Recent posts

Programmatic Media Buying Explained for eCommerce Businesses

July 7, 2020

If you are buying into other websites’ media space, you are probably familiar with the “direct buy” long journey that involves long negotiations with publishers, tons of emails, and other manual actions. To cut this long story short, marketers struggled to make everything automated. But they did succeed — in 2009 when the real-time bidding Continue reading >

How to Develop a Digital Strategy: 6 Questions Brands Should Answer

July 7, 2020

The right marketing strategy is exactly what defines your place on the battlefield for clients’ attention. With more than 1,400 tools that work in digital marketing, each of these can be used in a number of ways. If you want to understand which one can help to solve your business tasks, do start with a Continue reading >

Web Analytics Case Study: How to Achieve up to 98% Accuracy in Forecasting Models

July 2, 2020

Thanks to Web Analytics, marketers can effectively measure, examine, and adjust changes to various online campaigns. Modern tools like Google Analytics allow to carefully analyse the data from CRM and prepare handy dashboards for the executive team and stakeholders. But the most important is Web Analytics’ potential in forecasting and bringing your business forward over Continue reading >

Marketing to Generations X, Y, Z: the Fashion Niche

June 22, 2020

Marketers are advocates of the “know your audience” approach. And right they are. Purchasing habits of different demographic groups differ radically while creating a so-called portrait of your consumer, this helps to understand their needs and influence the decision to purchase. Marketing to different generations is especially applicable in the fashion niche. We previously explained Continue reading >

Let's get the ball rolling

Please fill in this short form and we will be in touch with you soon

For any questions [email protected]


+44 (0) 20 313 766 81
+44 7852 537715

The Terrace AT5,
Grantham Street,

+1 347 809 34 86

Las Vegas
Suite 100,
NV 89113

Roosikrantsi 2-K230,
Kesklinna linnaosa,
Harju maakond,
Tallinn 10119

CEE Ecommerce Report 2019

Based on the analytics data of 292 websites

enter correct name, please
enter correct e-mail, please


start now

Start now