编辑:
如何将所有非活动子域重定向至“www”?
在这里,我尝试将所有未列出的子域重定向到“www”。我无法使其正常工作,因为%1和%2没有返回任何内容。在这里,我尝试重定向到google.com只是为了检查返回的%2值..,但它没有返回任何内容,并且重定向url是http://www.google.com/
RewriteCond %{HTTP_HOST} !^(admin|demo|www)\.([^\.]+\.[^\.]+)$ [NC]
RewriteRule ^(.*)$ http://www.google.com/%2 [L,R=301]
这是我真正想做的事
RewriteCond %{HTTP_HOST} !^(admin|demo|www)\.([^\.]+\.[^\.]+)$ [NC]
RewriteRule ^(.*)$ http://www.%2/$1 [L,R=301]
答案1
RewriteCond %{HTTP_HOST} !^(www|admin|files|mysql\.)domain\.com$ [NC]
RewriteRule ^ http://www.domain.com%{REQUEST_URI} [NE,L,R=301]
未经测试但应该可以工作..
答案2
假设 DNS 条目已经存在,你可以使用我做的事情在几个领域:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^([^.]+)\.mydomain\.com$
RewriteRule ^/(.*)$ http://mydomain.com/%1/$1 [L,R]
这将以 的形式接收请求sub.domain.com
并将其推送至domain.com/sub
。
您可以删除%1
并得到以下内容不是使用我正在使用的子域到路径方法:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^([^.]+)\.mydomain\.com$
RewriteRule ^/(.*)$ http://mydomain.com/$1 [L,R]