Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Syntax for 301 redirect of www to non-www using httpd.conf

How do I setup a rule (on httpd.conf) to redirect all the traffic from www.domain.com to domain.com? Will the following work?

<VirtualHost www.domain.com>
      Redirect 301 / http://domain.com/
</VirtualHost>

Where should I put this tag in httpd.conf? Does the order matter?

like image 355
Nir Alfasi Avatar asked Feb 17 '12 03:02

Nir Alfasi


1 Answers

This is an example of what you can use/do:

<VirtualHost *:80>

  DocumentRoot "/var/www/domain.com"
  ServerName domain.com
  ServerAlias domain.com www.domain.com

  <Directory "/path/to/public_html">
      allow from all
      Options +Indexes
  </Directory>

  Options +FollowSymLinks
  RewriteEngine On
  RewriteCond %{HTTP_HOST} ^www.domain.com [NC]
  RewriteRule (.*) http://domain.com%{REQUEST_URI} [R=301,L]

</VirtualHost>

The Redirect 301 is good to use but does not have the same flexibility as a rewrite rule.

like image 162
Book Of Zeus Avatar answered Oct 18 '22 07:10

Book Of Zeus