密码恢复URL有错误-但在代码或数据库中找不到

时间:2014-03-26 作者:fred2

在多站点/网络安装中,我的密码恢复URL突然出现问题:

 http//my.domain.com/wp-login.php?action=lostpassword
请注意“http”后面缺少冒号。

对数据库和代码库进行grep不会发现任何罪魁祸首(尽管它一定在那里的某个地方)。知道是什么导致了问题吗?站点域设置似乎都正确。

以下是多站点配置:

/* Multisite */
define(\'WP_ALLOW_MULTISITE\', true);
define(\'MULTISITE\', true);
define(\'SUBDOMAIN_INSTALL\', true);
define(\'DOMAIN_CURRENT_SITE\', \'http://my.networkdomain.com\');
define(\'PATH_CURRENT_SITE\', \'/\');
define(\'SITE_ID_CURRENT_SITE\', 1);
define(\'BLOG_ID_CURRENT_SITE\', 1);
define( \'SUNRISE\', \'on\' );

2 个回复
最合适的回答,由SO网友:fred2 整理而成

解决方案是在wp_site 桌子

这个domain 字段输入设置为(可能在更改域名期间手动设置)"http://my.domain.com". 它不应该包含协议,而应该是一个裸域。

Wordpress添加另一个"http://" 到域的开头,然后通过文本过滤器运行它,该过滤器将删除第二个":". 我最终得到的是"http://http//my.domain.com"

因此,我无法使用grep在数据库代码中查找“打字错误”,因为它是动态生成的。

一个简单的解决方案,但很难找到。

SO网友:Shawn H

您的站点的主url可能在wp配置中被覆盖。php文件,我会确保丢失的冒号不是从那里产生的。

结束