Generate 301 redirect code for .htaccess files. Redirect from www to non-www or non-www to www versions of your domain instantly.
Create www to non-www or non-www to www 301 Redirect code for Htaccess using Indexpro htaccess rewrite generator tool. Just follow below 3 steps and click on "Get .htaccess Code" button.
Do not include www. Domain name only - e.g. yourdomain.com
An .htaccess redirect is a server configuration directive that automatically sends visitors from one URL to another. The .htaccess file is a powerful configuration file used on Apache web servers to control various aspects of how your website functions, including URL redirects, security settings, and URL rewriting.
A 301 redirect is a permanent redirect that tells search engines the page has permanently moved to a new location. This is the most SEO-friendly type of redirect because it passes approximately 90-99% of link equity (ranking power) to the redirected page. It's essential for maintaining SEO value when changing URLs or consolidating duplicate content.
The www to non-www (or vice versa) redirect is particularly important for SEO because search engines treat www.example.com and example.com as two different websites. Without proper redirection, your link equity gets split between both versions, potentially harming your search rankings.
Implementing proper .htaccess redirects offers numerous benefits for your website:
Four rules cover the great majority of real redirect work. Each goes in the .htaccess file at your document root, inside an IfModule mod_rewrite.c block with RewriteEngine On above it.
Sends every http request to the https version of the same URL, preserving the path.
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]Picks one canonical host so the same page is not reachable at two addresses.
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]For a page that moved. Point it at the closest equivalent, not the homepage.
Redirect 301 /old-page https://www.example.com/new-pageMoves a folder and everything under it, keeping the rest of the path intact.
RewriteRule ^old-folder/(.*)$ /new-folder/$1 [L,R=301]A 301 is permanent and tells Google to move the ranking signals to the new URL. A 302 is temporary and tells Google to keep the old one. Use 301 for anything that has genuinely moved. Using 302 by mistake is one of the most common ways sites lose rankings during a migration.
A 301 passes the great majority of it. What costs you is chaining: every extra hop adds latency and risk, and long chains can be abandoned by crawlers. Point the old URL at the final destination directly.
In the document root of your site, usually alongside the homepage file. Rules in a subdirectory's .htaccess apply only to that directory and below.
No. It is an Apache feature. Nginx uses its own configuration syntax and ignores .htaccess entirely, so rules pasted there will silently do nothing.
Almost always a rule that matches its own destination, so the redirect fires again on arrival. Adding a condition that excludes the target URL, such as a RewriteCond checking the host or path, breaks the cycle.
Only if there is genuinely no closer match. Google treats mass redirects to the homepage as soft 404s, which means the old URL gets dropped anyway. A relevant page or a clean 410 is usually better.