google-php-api-client从localhost移动到远程

时间:2014-09-12 02:44:26

标签: php api oauth client public-key

所以我建立了一个网站,使用google-api-php-client来获取访问令牌,php-google-spreadsheet-client从我正在使用的Google电子表格中提取数据。我最近在localhost上工作了所有东西,但是只要我把所有东西都推到了服务器上,I got the error :. 。 。 (click here for actual error

Warning: include_once(./libraries/google-api-php-client/src/Google/Client.php): failed to open stream: No such file or directory in /home2/alexcory/public_html/hackingedu/application/models/model.php

  • 我尝试改变路径,但似乎没有做任何事情。
  • 我检查了库的所有依赖项,并且我遇到了所有这些依赖项。

我被卡住了。

  • 我想我可能正在使用Oauth Service Account,但老实说,我不知道为什么这不起作用。我在某个地方读到这是做到这一点的方式而且它有效。
  • 如果 因为那个,那么我可能需要使用Oauth Web Application。我在第一次使用API​​时尝试了这个,但无法让它工作,偶然发现有人说要使用Oauth Service Account

问题:

如果我必须使用Oauth Web Application,那么Oauth Web应用程序中的Client Secret与Oauth服务帐户中的Public Key Fingerprints有何不同,如this image所示?

同时

我尝试在DELETEme.php文件中使用以下代码,基本上只有die('you win');语句。

if (file_exists('/DELETEme.php')) {
    die('/DELETEme.php');
} elseif (file_exists('../DELETEme.php')) {
    die("../DELETEme.php");
} elseif (file_exists('../../DELETEme.php')) {
    die('../../DELETEme.php');
} elseif (file_exists('../../../DELETEme.php')) {
    die('../../../DELETEme.php');
} else {
    die("losing GRRRRR");
}

但我仍然 losing GRRRR

model.php的文件结构如下:

▶ home
. . . index.php
. . . DELETEme.php
. . . ▶ application
. . . . . . ▶ models
. . . . . . . . . model.php
. . . . . . ▶ controllers
. . . . . . . . . controller.php
. . . ▶ views

1 个答案:

答案 0 :(得分:1)

当我遇到No such file or directory in...错误时,我通常会添加:

die(get_include_path());

在include之前(在你的情况下,在.../modal.php中),以查看PHP正在运行/配置的路径。

很可能,您需要让PHP知道libraries目录的位置。你可以这样做:

set_include_path(get_include_path() . PATH_SEPARATOR . '/path/to/libraries');

或更新php.ini配置文件中的include_path指令。

此外,我发现您使用./开始了您的路径。这意味着“在当前目录中”。那么,librariesmodel.php存在于同一目录中吗?如果没有,那么在将google-api-php-client/src/Google/Client.php添加到/path/to/libraries后,您希望路径为include_path