gpt4 book ai didi

wordpress - 使用WordPress的通配符域重定向

转载 作者:行者123 更新时间:2023-12-04 09:42:57 25 4
gpt4 key购买 nike

我有两个带有子域的域名设置,如下所示...

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-rewrites移至托管帐户的www根目录中的主.htaccess中,以使其与WordPress规则分开? 编辑:回答-不,它们将不起作用,因为它们是位于根www之外的目录中的域。

  • 谢谢!

    最佳答案

    看起来我只需要将新规则移至WordPress部分上方即可。我还添加了一个新域名,该域名应该从.com域名中删除“www”。

    这一切似乎都在起作用。

    任何意见表示赞赏。

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^blog.domain.info$ [OR]
    RewriteCond %{HTTP_HOST} ^www.blog.domain.info$ [OR]
    RewriteCond %{HTTP_HOST} ^www.blog.domain.com$
    RewriteRule ^(.*)$ "http\:\/\/blog\.domain\.com\/$1" [R=301,L]
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    编辑

    请注意,如果您更改了这些Wordpress注释之间包含的htaccess文件中的任何内容,则它可能在以后的时间被Wordpress覆盖。将自定义编辑内容移到该块的外部也可以使用,并且不受Wordpress本身对htaccess所做的任何更改的影响。
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^blog.domain.info$ [OR]
    RewriteCond %{HTTP_HOST} ^www.blog.domain.info$ [OR]
    RewriteCond %{HTTP_HOST} ^www.blog.domain.com$
    RewriteRule ^(.*)$ "http\:\/\/blog\.domain\.com\/$1" [R=301,L]

    # 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

    关于wordpress - 使用WordPress的通配符域重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5690673/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com