如何在foo.example上拥有一个Wordpress网站,在foo.example/bar上拥有另一个Wordpre



我有一个传统的WordPress博客,只在PHP 5.2中运行(在以后的版本中有很多不兼容的地方(,我正在开发一个新的Wordpress博客,应该在PHP 7中运行。

要求是新博客的URL为foo.example,并且旧版将在foo.example/bar

由于不同的PHP版本,每个版本都托管在不同的机器上。到目前为止,我得到的最接近的是有一个指向旧博客的子域bar.foo.example,但无法foo.example/bar做同样的事情(甚至不知道是否有可能(。

我很乐意感谢这项任务的一些帮助,并且我对新的替代方案持开放态度。

根据您服务器的软件,我知道您可以像在NGINX中那样做一些事情:

server {
    server_name domain.tld;
    root /var/www/wordpress;
    index index.php;
    ...
    location / {
            try_files $uri $uri/ /index.php?$args;
    }
    location /bar/ {
            root /var/www/wordpress-legacy;
            try_files $uri $uri/ /index.php?$args;
    }

    ...
}

您不能根据请求路径真正指向不同的服务器 - 域将始终指向一台服务器(至少从用户的角度来看(。但是,这一个服务器可以用作代理并从正确的服务器提供内容。潜在的解决方案:

  1. 在这两个服务器前面放置一个负载均衡器 - 请参阅 HAProxy - 具有负载平衡的基于 URL 的路由。
  2. 将新服务器配置为代理,以便为子目录提供来自旧服务器的内容。例如,通过使用NGINX反向代理:

    location /bar/ {
        proxy_pass http://legacy.foo.example/bar/;
    }
    

最新更新