多站点根站点安装在子域上,将子站点作为子目录

时间:2016-04-02 作者:Steve

我在以下位置安装了WordPress多站点dev.example.com, 并使用子目录启用网络。

如果我已登录dev.example.com/wp-admin, 然后访问dev.example.com/site2, 我丢失了页面顶部的水平管理导航栏,当我再次访问时dev.example.com/wp-admin 我被迫再次登录。

我已确认我的主管理员帐户是的管理员帐户/site2

我的.htaccess:

# begin WordPress
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]
# end WordPress
以前缺少此代码,但添加它并不能解决问题。

我的wp-config.php:

define(\'MULTISITE\', true);
define(\'SUBDOMAIN_INSTALL\', false);
define(\'DOMAIN_CURRENT_SITE\', \'dev.example.com\');
define(\'PATH_CURRENT_SITE\', \'/\');
define(\'SITE_ID_CURRENT_SITE\', 1);
define(\'BLOG_ID_CURRENT_SITE\', 1);
我检查了Chrome的饼干,没有饼干dev.example.com/site2.

我可以很好地登录到其他多站点网络。

非常感谢您的帮助。

1 个回复
SO网友:kovshenin

这可能是因为您的身份验证cookie设置为dev.example。com/site1/当您登录到site1时,浏览器自然不会为site2传递cookie。

您可以尝试和做的是SITECOOKIEPATHADMIN_COOKIE_PATH, 默认设置如下:

  • SITECOOKIEPATHget_option(\'siteurl\')
  • ADMIN_COOKIE_PATHSITECOOKIEPATH . \'wp-admin\'
因此更改SITECOOKIEPATH 通过wp配置。例如,php文件到将在两个站点之间共享的内容应该可以工作/. 我不确定ADMIN_COOKIE_PATH 在这一点上,但我的猜测是,默认值将不再起作用,因为您的wp admin目录位于不同的位置。我不认为你能ADMIN_COOKIE_PATH 在插件中,因为默认值很早就设置好了,所以我想您必须使用sunrise。如果要将其设置为get_option(\'siteurl\') . \'wp-admin\'.

相关推荐

Multisite Smtp Server

所以我遇到了一个问题。我有wordpress多站点,但问题是发送smtp电子邮件。我所做的是在plesk中创建smtp服务器。使用来自smtp服务器的凭据。然后在域中使用DNS发送电子邮件;“自”;住址问题是,并不是我的所有客户都知道如何添加DNS。我是否可以从Plesk添加这些DNS条目?我知道有DNS设置,但我不确定这是否会覆盖客户DNS?例如:博客名称:xyz。comadmin电子邮件:[email protected]