将子域重定向到没有www的IP

时间:2011-11-14 02:36:30

标签: apache .htaccess redirect subdomain

我试了几个小时,几乎生气了。我想将sub.example.com重定向到远程服务器文件上的文件。

所以我想将我的子域名(使用www /不带www)重定向到x.x.x.x / example / photo.jpg

www.sub.example.com的一切正常。它完美地重定向到x.x.x.x / example。 说到sub.example.com,我有404。

RewriteEngine on

RewriteCond %{HTTP_HOST} ^sub\.example\.com$
RewriteCond %{HTTP_HOST} ^www\.sub\.example\.com$
RewriteRule ^(.*)$ "http\:\/\/x\.x\.x\.x\/example/$1" [R=301,L]

2 个答案:

答案 0 :(得分:2)

RewriteCond是隐式“AND”编辑在一起的,这意味着你永远不会同时获得同时为“sub.example.com”和“www.sub.example.com”的%{HTTP_HOST},因此RewriteRule永远不会被使用。您可以在第一个之后添加[OR]

RewriteCond %{HTTP_HOST} ^sub\.example\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.sub\.example\.com$

这样可以完成RewriteCond并使用规则,或者只使用它:

RewriteCond %{HTTP_HOST} ^(www\.)?sub\.example\.com$

本质上是说“www”。在比赛中可以是可选的。

答案 1 :(得分:0)

cliknfind website

使用此代码RewriteEngine On RewriteCond%{HTTP_HOST} ^ example.com [NC] RewriteRule ^(。*)$ http://www.example.com/ $ 1 [R = 301,L]