这是我的设置。我有一个多站点实例运行在http://example.com, 我想做开发和登台。将现有的多站点WP实例移动到localhost上是一场噩梦,因此我将在临时位置上进行开发。
我设置了http://staging.example.com 指向托管帐户的/public\\u html/staging/目录,并将所有WP文件从我的根目录复制到/staging/目录。我还复制了数据库文件(SQL转储,将表导入新数据库),并更改了wp配置。指向新数据库的php文件。
在运行SQL更改数据库记录之后,我还更改了wp配置中的这一行。php文件:
/** Turning on WordPress MU, new in 3.0 */
define( \'MULTISITE\', true );
define( \'SUBDOMAIN_INSTALL\', false );
$base = \'/\';
define( \'DOMAIN_CURRENT_SITE\', \'example.com\' ); // <- I change this line
define( \'PATH_CURRENT_SITE\', \'/\' );
define( \'SITE_ID_CURRENT_SITE\', 1 );
define( \'BLOG_ID_CURRENT_SITE\', 1 );
更改为:
define( \'DOMAIN_CURRENT_SITE\', \'staging.example.com\' ); // <- now changed
当我加载时
http://staging.example.com, 我得到。。。
Error establishing database connection
!
我已经检查并三次检查了用户名和密码,确保用户对新的登台数据库拥有所有权限,并且我将DBHOST保留为“localhost”(尽管将其更改为staging.example.com也没有帮助)。
为什么数据库连接会失败?任何人(提前感谢您的帮助。)
NB: http://example.com 在非常相似的db连接设置下运行良好,只是使用了不同的数据库,所以数据库服务器关闭时不会出现问题
最合适的回答,由SO网友:timshutes 整理而成
有一个想法——当我去www.example时。com/staging/wp admin它会自动将我重定向到www.example。com/wp管理员
无法从暂存重定向。实例com到示例。com/暂存是否与现有安装冲突?
更新:看起来可能与相关。htaccess问题和数据库中复杂的域引用
来自WP Codex:
Moving WordPress Multisite
多站点的移动要复杂得多,因为数据库本身有多个对服务器名称和文件夹位置的引用。
移动多站点的最佳方法是移动文件,编辑。htaccess和wp配置。php(如果包含多站点的文件夹名称已更改),然后手动编辑数据库。搜索域名的所有实例,并根据需要进行更改。这一步骤尚不容易实现自动化。如果要将多站点从一个文件夹移动到另一个文件夹,则需要确保编辑wp\\U博客条目以正确更改文件夹名称。