迁移后WordPress多站点目录/url结构和管理员访问的问题

时间:2020-06-18 作者:Ash

我正在尝试将多站点WP安装迁移到新服务器。该网络由一个简单的父站点组成,该站点根据用户的位置将用户重定向到四个子站点之一。E、 g.如果来自英国的用户访问该网站,他们将被重定向到该网站。com/uk子网站。

迁移之前,每个子网站的主题;插件资源(图像、css、js等)可从子网站的url获得,例如网站。com公司/uk/wp内容/主题/英国主题/图像/图像。svg。将站点迁移到新服务器后,资源不再从子站点域中可用,而是从父站点的域中可用,例如,站点。com/wp内容/主题/英国主题/图像/图像。svg。这导致所有样式表、图像和;每个子网站的js到404。

另一个问题是,虽然主多站点网络管理员可以访问(site.com/wp admin/),但子站点的管理面板无法访问,并且将转到站点。例如,com/uk/wp admin会产生ERR\\u TOO\\u MANY\\u重定向错误。

我觉得这两个问题可能有某种联系,但我不确定。有人知道为什么会发生这种情况,我如何才能解决它吗?

1 个回复
SO网友:Pog Le Pog

我不知道迁移是如何执行的,但这里有一些过去让我感到困惑的事情。

Files: 检查.htaccesswp-config.php 文件。多站点的htaccess应如下所示:

RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\\.php)$ $2 [L]
RewriteRule . index.php [L]
和wp配置。php应该有额外的行来定义常量:

define( \'WP_ALLOW_MULTISITE\', true );
define( \'MULTISITE\', true );
define( \'SUBDOMAIN_INSTALL\', false );
etc...
如果它们已经存在,您可以尝试将它们还原为常规(非多站点)版本,并手动完成转换为多站点的过程。这样,您可以确保文件是正确的,因为WP将自动生成文件和DB内容。

Database: 这个options 每个多站点安装的表应包含正确的site_urlhome.这个wp_blogs 表(可能不是wp_ 在您的情况下)需要包含path 对于每次安装。

希望这能有所帮助。如果我想到什么,我会加更多!