0

请原谅一个新手问题:

我在我的开发服务器上启动并运行了 Wordpress,没有任何问题。当我尝试使用 appengine 上传它时,我从 WP_DEBUG 收到以下错误输出,其中 MYSITEID 是我的网站名称:

Warning: mysqli_connect(): (HY000/2002): Unable to find the socket transport "tcp" -
did you forget to enable it when you configured PHP? in 
/base/data/home/apps/s~MYSITEID/wp.370505361471441320/wordpress/wp-content/db.php on line 176

它继续:

“这要么意味着您wp-config.php文件中的用户名和密码信息不正确,要么我们无法联系 . 的数据库服务器:/cloudsql/MYSITEID:wordpress。这可能意味着您主机的数据库服务器已关闭。”

我的 Cloud SQL 实例已启动并正在运行,我完全按照教程的第 7 步和第 8 步进行操作。

我的 wp_config db_host 部分内容如下:

/** MySQL hostname */
if(isset($_SERVER['SERVER_SOFTWARE']) && strpos($_SERVER['SERVER_SOFTWARE'],'Google App Engine') !== false) {
  define('DB_HOST', ':/cloudsql/MYSITEID:wordpress');
}else{
  define('DB_HOST', 'localhost');
}

从外观上看,我的错误文本几乎是 phpmyadmin 用户遇到的逐字记录,但我仍然不确定如何解决它。我需要更改 DB_HOST 行上的某些内容吗?请参阅GAE 上的 phpMyAdmin - 身份验证

感谢您的帮助 - 非常感谢 GAE for PHP 的存在!

4

1 回答 1

0

原来问题出在 db.php 中 - 我已按照此处的说明将其安装在 wp-content 中:http ://wordpress.org/plugins/mysqli/installation/

我不知道为什么我最初安装的是 mysqli 而不是使用 mysql;它似乎修复了我在开发服务器上遇到的早期 php 错误。但是在删除 db.php 之后,我的开发版本和 Cloud SQL 实例都可以正常工作!

于 2013-09-27T17:16:48.403 回答