Ejemplo n.º 1
0
                header('Retry-After: 3600');
                exit($app->handle('/error/show503')->getContent());
        }
    }
});
set_error_handler(function ($errno, $errstr, $errfile, $errline) {
    switch ($errno) {
        case E_USER_NOTICE:
        case E_STRICT:
            break;
        default:
            Rj\Logger::messages()->error(sprintf("Error: #%d %s at %s:%d", $errno, $errstr, $errfile, $errline));
    }
});
$di->set('db', function () use($di) {
    $db = new Phalcon\Db\Adapter\Pdo\Mysql($di->getShared('config')->database->toArray());
    return $db;
}, true);
$di->set('Mailer', Config::instance()->mailer, true);
$frontCache = new Phalcon\Cache\Frontend\Data(['lifetime' => 206400 * 3]);
$di->set('cache', function () use($frontCache) {
    if ($host = Config::instance()->memcached_addr) {
        try {
            $redis = new Redis();
            $redis->connect(Config::instance()->memcached_addr);
            return new Rj\Cache\Backend\Redis($frontCache, ['redis' => $redis]);
        } catch (Exception $e) {
            Rj\Logger::messages()->error("Exception: " . $e->getMessage() . "\n" . $e->getTraceAsString());
        }
    }
    return new Phalcon\Cache\Backend\File($frontCache, ['cacheDir' => Config::instance()->cache_dir]);