How to redirect non www to www domain

August 11, 2014 8.4k views

I have successfully followed the tutorial: How To Set Up Apache Virtual Hosts on Ubuntu 12.04 LTS.

I can access and also

However, I would like to show when I type in

I have tried a 301 direct in the virtual host file but that didn’t work, neither did creating a an .htaccess file and using the following code:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^ [nocase]
RewriteRule ^(.*)$1 [last,redirect=301]

Edit: I have already amended the apache2.conf to AllowOverride All and created an .htaccess file in the root of the site directory.

Thank you for any assistance.

2 Answers

That way I would do it is creating a new VirtualHost for and having it redirect to

<VirtualHost *:80>

Redirect 301 /

Make sure you remove any instances of in your current VirtualHost (ServerName and ServerAlias) and restart Apache:

sudo service apache2 restart

I had the same problem. Then I figure it out and wrote a content regarding this issue. If you want the best and easiest way then visit
you will find the answer both for non-www to www and www to non-www

Have another answer? Share your knowledge.