用于www和www2的子域的RedirectCond帮助

时间:2013-10-29 11:44:40

标签: apache mod-rewrite

我们有2个子域www.mydomain.comwww2.mydomain.com。我正在尝试将网页重定向到新网站,如下所示:

  • www.mydomain.com/support to newdomain.com/site1/page1.html
  • www2.mydomain.com/support to newdomain.com/site2/page2.html

我在httpd.conf中设置了重定向规则,如下所示:

  

RewriteCond%{HTTP_HOST}(www。)?mydomain.com

     

RewriteCond%{HTTP_HOST}!^ $

     

RewriteRule ^ / support /?$ http://newdomain.com/site1/page1.html [R = 301,NC,L]

     

RewriteCond%{HTTP_HOST}(www.2。)?mydomain.com

     

RewriteCond%{HTTP_HOST}!^ $

     

RewriteRule ^ / support /?$ http://newdomain.com/site2/page2.html [R = 301,NC,L]

第一个重定向规则正常,但不是另一个。在上述情况下,wwwwww2.mydomain.com/support都将转到newdomain.com/site1/page1.html

感谢任何帮助!

2 个答案:

答案 0 :(得分:0)

你可以试试这个,反斜线点是一个真正的点匹配,我已经在apache2中测试过:

RewriteEngine on
RewriteCond %{HTTP_HOST} www\.mydomain.com
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/support/?$ http://mydomain.com/site1/page1.html [R=301,NC,L]

RewriteCond %{HTTP_HOST} www2\.mydomain.com
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/support/?$ http://mydomain.com/site2/page2.html [R=301,NC,L]

我们使用www。而不是(www。)?。

答案 1 :(得分:0)

尝试在相同条件下检查www和www2

from random import random, choice

letters = ['A', 'B', 'C']
prob = 0.2
target_length = 20

target = ""
while len(target) < target_length:
    if len(target) >= 2 and random() < prob:
        c = target[-2]
    else:
        c = choice(letters)
    target += c

print(target)