Я пытаюсь перенести свое приложение на Google App Engine php7.2. Основная проблема в том, что сессии хранятся в Memcache. Но мне нужны более последовательные сессии.
Я нашел хороший репо, который должен решить проблему https://github.com/tomwalder/php-gds-session Но он выдает ошибку после установки и включения.
Ошибка: класс 'google \ appengine \ datastore \ v4 \ LookupRequest' не найден
в GDS \ Gateway \ ProtoBuf-> fetchByKeyPart (/srv/vendor/tomwalder/php-gds/src/GDS/Gateway/ProtoBuf.php:179)
в GDS \ Gateway-> fetchByNames (/srv/vendor/tomwalder/php-gds/src/GDS/Gateway.php:194)
в GDS \ Gateway-> fetchByName (/srv/vendor/tomwalder/php-gds/src/GDS/Gateway.php:122)
в GDS \ Store-> fetchByName (/srv/vendor/tomwalder/php-gds/src/GDS/Store.php:184)
в GDS \ Session \ Handler-> read (/srv/vendor/tomwalder/php-gds-session/src/GDS/Session/Handler.php:176)
at session_start ([внутренняя функция])
в GDS \ Session \ Handler :: start (/srv/vendor/tomwalder/php-gds-session/src/GDS/Session/Handler.php:105)
на {main} (/srv/bootstrap.php:12)
Кто-нибудь может помочь?
мой композитор.json:
"require": {
"php": ">=5.3.0",
"google/cloud-logging": "^1.16",
"google/cloud-error-reporting": "^0.14.4",
"google/cloud-storage": "^1.12",
"google/cloud-datastore": "^1.9",
"monolog/monolog": "^1.24",
"league/flysystem-sftp": "^1.0",
"aws/aws-sdk-php": "^3.94",
"vlucas/phpdotenv": "^3.3",
"php-http/guzzle6-adapter": "^1.1",
"bugsnag/bugsnag": "^3.16",
"mailgun/mailgun-php": "~2.0",
"paragonie/random_compat": "<9.99",
"tomwalder/php-gds-session": "v1.0.0",
"google/apiclient": "^2.2"
}
поверх bootstrap.php
// Fix for finding Application-ID on GAE
if(!isset($_SERVER['APPLICATION_ID'])){
$_SERVER['APPLICATION_ID'] = $_SERVER['GAE_APPLICATION'];
}
GDS\Session\Handler::start();