DynamoDB会话处理程序站点范围与phpMyAdmin一起使用

时间:2014-03-12 22:24:25

标签: php amazon-web-services phpmyadmin composer-php elastic-beanstalk

我目前正在使用AWS Elastic Beanstalk来启动LAMP环境。由于Elastic Beanstalk是一个多实例环境,$_SESSION未配置为正常工作,建议使用DynamoDB Session Handler。在session_start();

之前插入以下代码,这对我来说很好
require 'vendor/autoload.php';

use Aws\DynamoDb\DynamoDbClient;
use Aws\DynamoDb\Session\SessionHandler;

$dynamoDb = DynamoDbClient::factory(array(
    'key'    => 'XXXX',
    'secret' => 'XXXX',
    'region' => 'us-east-1'
));

$sessionHandler = SessionHandler::factory(array(
    'dynamodb_client' => $dynamoDb,
    'table_name'      => 'sessions',
));
$sessionHandler->register();

但是,这不适用于应用范围广泛,导致phpMyAdmin启动并运行时出现问题。如何让这个应用程序广泛应用?

1 个答案:

答案 0 :(得分:0)

AFAIK,无法从php.ini配置自定义会话处理程序,并且要使用DynamoDB会话处理程序,您必须以某种方式引导它。对于具有多个入口点的应用程序,这提出了挑战。您可以尝试的一个想法是使用auto_prepend_file INI setting来运行引导代码。