1

我希望我的 WordPress 博客的域名是example.com而不是www.example.com(连同网页中的链接)。但是WordPress可以通过. _ 虽然可以通过放入主题的 php 文件来完全禁用此功能,但我认为该功能中还有许多其他有用的重定向,因此我只想禁用从example.comwww.example.com的重定向。目前这不能仅通过服务器的 URL 重写配置来完成,因为它会导致无限重定向循环。我还检查了源代码,找到了以下可能相关的片段:redirect_canonicalremove_filter('template_redirect' 'redirect_canonical')

    // www.example.com vs example.com
    $user_home = @parse_url(home_url());
    if ( !empty($user_home['host']) )
            $redirect['host'] = $user_home['host'];
    if ( empty($user_home['path']) )
            $user_home['path'] = '/';

    // Ignore differences in host capitalization, as this can lead to infinite redirects
    // Only redirect no-www <=> yes-www
    if ( strtolower($original['host']) == strtolower($redirect['host']) ||
            ( strtolower($original['host']) != 'www.' . strtolower($redirect['host'])
              && 'www.' . strtolower($original['host']) != strtolower($redirect['host']) ) )
            $redirect['host'] = $original['host'];

那么我是否必须更改源代码?无论哪种情况,我该怎么办?谢谢你。

更新:或更恰当地说,如何通过自定义template_redirect处理程序执行此操作?

4

0 回答 0