无法通过本地 php 实例连接到数据存储


Unable to connect to datastore via local php instance

我正在尝试按照指南进行操作 https://gae-php-tips.appspot.com/2013/12/23/getting-started-with-the-cloud-datastore-on-php-app-engine/并且我可以运行初始"datastore_connect"查询的部分

当我

远程部署时它可以工作,但是当我在本地运行时,我在浏览器中收到此错误:

警告:mkdir():权限被拒绝 Y:''UMBRELLA''SOCIALIBS''GAE''socialibs''php-libs''external''google-api-php-client-master''src''Google''Cache''File.php 在第 140 行

看看我得到的日志:

INFO 2015-01-27 11:14:01,859 module.py:718] 默认值:"GET /datastore_connect HTTP/1.1" 200 232

请注意,回显输出时$storageDir的值为

C:''WINDOWS/Google_Client/cb

另外,我意识到这可能是谷歌 API 客户端 PHP 的副本 - mkdir():P ermission 被拒绝,但那里的答案对我不起作用,我不确定权限警告是否是真正的罪魁祸首无论如何......

引发错误的 php 代码行来自 Google PHP 库中的 getCacheDir 方法:

  if (! mkdir($storageDir, 0755, true)) {

它与缓存目录相关,而不是与数据存储本身相关。您将需要至少向此目录申请此访问权限(0755,linux表示:drwxr-xr-x),该权限允许用户的读取/可执行文件访问和所有者的写入/读取/可执行文件访问

我知道

这不是你特别想要的答案,但是..

我一直处于您的相同位置,我有点放弃了该教程。我遇到了Tom Walder的PHP版Google Datastore Library,它非常惊人。

我强烈建议您检查一下。我在我的应用程序中非常完整地使用它。