I need make two different redirects in .htaccess
.
On one website: example.com
is created alias user.example.com
(same code for two domains).
I need to write two redirects
user.example.com
-> user.example.com/login
and second one
example.com
-> www.example.com
(versions without www to version with www) including subpages (excluding user.example.com
- not www version)
all redirects with https protocol
only one redirect works fine, but with the second one together it fails.
RewriteEngine On
## RewriteRule ^user.example.com https://user.example.com/login [R,L]
RewriteCond %{HTTP_HOST} ^user\.example\.com/ [NC]
RewriteRule ^(.*) https://user.example.com/login [L,R]
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,QSA,L]
CodePudding user response:
RewriteCond %{HTTP_HOST} ^user\.example\.com/ [NC] RewriteRule ^(.*) https://user.example.com/login [L,R]
This will result in a redirect-loop, since it redirects everything (including /login
itself) to /login
.
If you only want to redirect the document root, then you should change the RewriteRule
pattern from ^(.*)
to ^$
(an empty URL-path).
The other redirect is "OK".
You should clear your browser cache before testing.