它似乎是WordPress的一个“功能”,它被设计为在一个主机名上运行。
'siteurl'和'home'参数硬连线到数据库选项表中,因此如果您在不匹配的主机名上访问该站点,您将被PHP重定向到正确的主机名。更令人恼火的是,siteurl以输出到HTML的所有内部链接为前缀。 (虽然,也许这就是主题的错 - 我还没看过那个)
是否有正确的方法在不破坏核心的情况下在多个域上运行WordPress,而无需维护多个选项表?
答案 0 :(得分:1)
我认为正确的方法是enable multi-site operation,这是WP3.0的一个特性。
答案 1 :(得分:1)
有一个名为Domain Mirror的旧插件似乎可以做你想要的。不确定它是否适用于WordPress 3+,但至少相同的原则应该是足够的,你可以查看源代码并使其适应你的functions.php。
答案 2 :(得分:0)
您无需维护多个选项表。如果没有任何作用,请尝试以下黑客攻击Host:
参数可以用作简单快速的黑客。方法如下:
$_REQUEST['Host']/wp-directory-path/
。这是请求标头。第一行表示它是/ pub / WWW路径的GET请求,第二行指示它是哪个域。自HTTP / 1.1以来,主机字段是必需的
GET /pub/WWW/ HTTP/1.1
Host: www.w3.org