我今晚早些时候尝试在Google App Engine下设置WordPress(按照此处的说明进行操作:https://developers.google.com/appengine/articles/wordpress)。
它在本地运行正常,但是当我推送到远程时,我收到数据库错误(在https://wp-dot-frontiermediag.appspot.com/处可见)。如果我们抛出/wp_admin/install.php,你会得到:
This either means that the username and password information in your
wp-config.php file is incorrect or we can't contact the database server
at :/cloudsql/frontiermediag:fmwp. This could mean your host's database
server is down.
这是wp-config中的相关代码:
/** MySQL hostname */
if(isset($_SERVER['SERVER_SOFTWARE']) && strpos($_SERVER['SERVER_SOFTWARE'],'Google App Engine') !== false) {
define('DB_HOST', ':/cloudsql/frontiermediag:fmwp');
}else{
define('DB_HOST', 'localhost');
}
frontiermediag:fmwp在开发者控制台中显示“Status Runnable”> Cloud SQL。
我曾经做过一次这样的工作,所以我不确定我在这里缺少什么。我以为可能是因为我使用的是WP 3.8.1。但回到3.5.1并发生同样的事情。
有什么想法吗? frontiermediag在:fmwp ACL上列为授权应用程序。
答案 0 :(得分:0)
这种情况早些时候发生在我身上。但是,我编辑了我的Cloud SQL实例,并将“首选位置”设置为“跟随App Engine应用程序”从Google Developers Console。在我的案例中解决了这个数据库连接问题。
答案 1 :(得分:0)
我尝试了wordpress 3.5.1的说明,说明似乎对我有用。您上面的代码片段似乎是正确的,如果不查看其余代码,我不确定会出现什么问题。你可以再次尝试使用3.5.1开始的说明吗?
答案 2 :(得分:0)
我有这个问题,因为"关注App Engine App"在我的情况下,似乎不是第二代实例的选项,因此实例连接名称包括区域设置。
查看实例详细信息,在属性下,找到"实例连接名称"。这是应该遵循:cloudsql/
的文字。