How to Redirect non www to www URLs in Linux & Windows Servers

Websites are not having the www prefix before the domain can be forced to use the www prefix, for example; from example.com to www.example.com. We can see that many of the domains over the internet are having a www prefix and many are not.

Redirect non www to www URLs in Linux and Windows Servers

This is not an issue actually. With www and without www both are fine but it is a common thought that forcing one URL format is better for search engine optimization.

Redirect Non www URLs in Linux Server

To redirect URLs to www, you need to do some changes in your .htaccess file in the root folder. Locate the .htaccess file in your cPanel account and update the following line of codes.

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

Or

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

Note: If you want to redirect http to https pages use following rules. 

RewriteEngine On
RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301, L]

Redirect Non www URLs in Windows Server (IIS Server)

You will not find .htaccess file in windows (IIS) server. Search web.config file and make the following rule changes.

<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name=”Redirect to www” stopProcessing=”true”>
<match url=”.*” />
<conditions>
<add input=”{HTTP_HOST}” pattern=”^example.com$” />
</conditions>
<action type=”Redirect” url=”http://www.example.com/{R:0}”
redirectType=”Permanent” />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

Note: Use HTTPS or HTTP in URL according to you, what your site supports.

After doing changes in your .htaccess or web.config file, you will see that all non-www URLs will be redirected to www URLs.

Give a Comment