Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I want to redirect only my root to another url, but maintain all the /sub/directories where they belong (and redirect)

example:

mysite.com/1 redirects to somewhere mysite.com/admin opens a page

i want mysite.com/ to redirect to mysecondsite.com and only this with a 301 redirect using htaccess

share|improve this question
add comment

3 Answers

up vote 21 down vote accepted

Try this:

RewriteEngine on
RewriteCond %{HTTP_HOST} mysite\.com [NC]
RewriteCond %{REQUEST_URI} ^/$
Rewriterule ^(.*)$ http://mysecondsite.com/ [L,R=301]

If you don't need to check for the old domain (for example, if the directory where your .htaccess is placed is only used by the old domain) you can remove the second line.

share|improve this answer
    
In my case, I needed to redirect traffic to mysite.com/ but not foo.mysite.com so had to add a regex to line 2: RewriteCond %{HTTP_HOST} ^mysite\.com$ [NC] to ensure the match was for the exact host –  jaygooby Jun 23 at 13:18
add comment

A shorter solution:

Redirect 301 / http://mysecondsite.com/
share|improve this answer
4  
This will NOT do what jardel wants. It will redirect ALL pages rather than just the root. –  sharoz Jul 16 '13 at 23:49
add comment

If you mean you'd only like to redirect "/" to another domain, this will work:

RewriteEngine on
RewriteRule ^$ http://www.example.com/ [R=301,L]

This only matches the domain's root with nothing after it so it will only redirect the domain name without a filename specified.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.