开发者

RewriteRule help

I have a URL

http://test.devsite-1.com/test/tbox/

which I want to redirect to

http://tbox.devsite-1.com/

Rule:

RewriteCond %{HTTP_HOST}  !^tbox\.(.*)$  [NC]
RewriteCond %{HTTP_HOST}  ^(www\.|)(.*)$  [NC]
Rewr开发者_运维技巧iteCond %{REQUEST_URI}  ^/tbox(/.*|)$ 
RewriteRule /tbox/(.*)  http://tbox.%{HTTP_HOST}/$1 [R=301,L]

I don't understand why it is not redirecting me to the URL? Please note I need a generalized rule so that if I change test.devsite-1.com to tempo.devsite-1.com the same should work with the other URL as well.


Try this rule:

RewriteEngine On

RewriteCond %{HTTP_HOST} ^test\.(.+)$ [NC]
RewriteRule ^test/tbox/(.*)$ http://tbox.%1/$1 [R=301,L]

This will redirect (301 Permanent Redirect)

http://test.devsite-1.com/test/tbox/something-optional

to

http://tbox.devsite-1.com/something-optional
  1. It has to be placed in .htaccess file in website root folder (e.g. http://test.devsite-1.com/.htaccess). If placed elsewhere some tweaking may be required.
  2. It will only work if request is coming via test. subdomain.
  3. And it will only work if URL requested starts with test/tbox/.

All of the above matches your URL examples.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜