Firebase Firestore не подключается к php

#php #firebase #google-cloud-firestore

#php #firebase #google-облако-firestore

Вопрос:

Я новичок в firebase и изо всех сил пытаюсь подключить его к экземпляру виртуальной машины под управлением PHP. Я могу установить соединение с облачной базой данных firestore на PHP, но только в командной строке экземпляра виртуальной машины (например, ввод php index.php ) но получаю HTTP error 500, когда я захожу на веб-сайт через браузер.

ниже приведен PHP-код, который у меня есть. Я просто очень смущен, почему это работает в командной строке instane, но не через браузер.

 <?php

require (__DIR__.'/vendor/autoload.php');

use KreaitFirebaseFirestore;
use GoogleCloudStorageStorageClient;
use GoogleCloudFirestoreFirestoreClient;

use KreaitFirebaseFactory;
use KreaitFirebaseServiceAccount;

$db = new FirestoreClient([
        'projectId' => 'myprojectID',
    ]);

//$docRef = $db->collection('contact')->document('id1')->snapshot()->data();
//echo(print_r($docRef));
$usersRef = $db->collection('LoginData');
$snapshot = $usersRef->documents();

//add info

foreach ($snapshot as $user) {
    printf('User: %s' . PHP_EOL, $user->id());
    //echo($user->id());
}


?>
  

Комментарии:

1. К вашему сведению, код, который вы используете, не использует Firebase SDK. В своем текущем виде он будет искать учетные данные для аутентификации (необходимые для подключения к API Google / Firebase) в переменной среды GOOGLE_APPLICATION_CREDENTIALS . Я предполагаю, что эта переменная установлена в вашей среде командной строки, но не в среде вашего веб-сервера.

2. Как бы мне настроить GOOGLE_APPLICATION_CREDENTIALS в среде webser? @jeromegamez. Немного новичок в этом

3. Теперь все хорошо, добавил putenv и забыл добавить расширение grpc в файл apache2 php.ini. спасибо за вашу помощь 🙂