How To Redirect URLs From non-www To www In Linux & Windows Servers

Websites are not having www prefix before the domain can be forced to use www prefix, for example; 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 On 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 On Windows Server

You will not find .htaccess file in windows 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 acordning 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.

Leave a Comment