【发布时间】:2011-08-07 03:14:00
【问题描述】:
我有两个带有子域的域名设置如下...
blog.domain.com
www.blog.domain.com
blog.domain.info
www.blog.domain.info
两个域都指向同一服务器上的同一位置,即包含 WordPress 的目录。 (domain.com/blog)
为了让 Google 满意,我希望所有内容都重定向到这个域...
blog.domain.com
这是 WordPress 目录中包含的 .htaccess 文件中的内容...
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
所以我进入我的 cPanel 并添加了一个 301 域重定向,如下所示...
blog.domain.info -> blog.domain.com(“www”可选且已选择通配符)。
cPanel 然后根据 WordPress 重写规则自动将以下内容添加到同一个 .htaccess 文件中...
RewriteCond %{HTTP_HOST} ^blog.domain.info$ [OR]
RewriteCond %{HTTP_HOST} ^www.blog.domain.info$
RewriteRule ^(.*)$ "http\:\/\/blog\.domain\.com$1" [R=301,L]
问题是通配符部分似乎不起作用。
当我转到 blog.domain.info 时,我按预期被重定向到 blog.domain.com。
但是当我转到 blog.domain.info/my-post 时,我根本没有被重定向。
我该如何解决这个问题?我已经尝试重写我知道有效的规则,但我能想到的只是 WordPress 规则正在干扰。
一旦修复,我可以将这些 mod-rewrite 移动到主机帐户 www 根目录中的主 .htaccess 中,使它们与 WordPress 规则分开吗? 编辑: 回答 - 不,它们不会工作,因为它们是停在根 www 目录下的域。
谢谢!
【问题讨论】:
标签: wordpress .htaccess mod-rewrite redirect subdomain