• Config


    Config

    Config

    Settings for the framework setup in app/Config.php

    Set the timezone to your local

    date_default_timezone_set('Europe/London');

    Next, set the application web URL, Once the SITEURL is set it can be used to get the application address.

    define('SITEURL', 'http://example.com/');

    Set the base URL? if on the root of a domain it's a single '/' otherwise it's /foldername/

    define('DIR', '/');

    If using a database the database credentials will need adding:

    define('DB_TYPE', 'mysql');
    define('DB_HOST', 'localhost');
    define('DB_NAME', 'database name');
    define('DB_USER', 'root');
    define('DB_PASS', 'root');
    define('PREFIX', 'nova_');

    The prefix is optional but highly recommended, it's very useful when sharing databases with other applications, to avoid conflicts. The prefix should be the starting pattern of all table names likenova_users

    Nova provides a session helper class, in order to avoid session conflicts a prefix is used.

    define('SESSION_PREFIX', 'nova_');

    The following tells the framework what theme folder to use for views

    define('TEMPLATE','default');

    Set the default language

    define('LANGUAGE_CODE', 'en');

    set the application name:

    define('SITETITLE', 'Nova');

    Set encryption key - used for encrypting cookies

    define('ENCRYPT_KEY', '');

    By default errors are logged but not displayed, to display them set this to true

    Config::set('logger', array(
        'displayErrors' => false,
    ));

    The default theme comes with a profiler, similar to browsers inspector to turn on:

    Config::set('profiler', array(
        'useForensics' => false,
        'withDatabase' => false,
    ));

    App

    Turn debugging on by setting to true

    'debug' => false

    Assign the defined site url

    'url'  => SITEURL

    Assign the site name

    'name' => SITETITLE

    Turn on multilingual support

    'multilingual' => false,
    
    'locale' => LANGUAGE_CODE

    Assign encryption key

    key' => ENCRYPT_KEY

    Turn on csrf

    'csrf' => true

    Service providers

    'providers' => array(
        'AuthAuthServiceProvider',
        'CacheCacheServiceProvider',
        'RoutingRoutingServiceProvider',
        'CookieCookieServiceProvider',
        'DatabaseDatabaseServiceProvider',
        'EncryptionEncryptionServiceProvider',
        'HashingHashServiceProvider',
        'LogLogServiceProvider',
        'MailMailServiceProvider',
        'PaginationPaginationServiceProvider',
        'AuthRemindersReminderServiceProvider',
        'SessionSessionServiceProvider',
        'ValidationValidationServiceProvider',
    )

    Set manifest path

    'manifest' => STORAGE_PATH

    Set alias paths

    'aliases' => array(
        // The Core Tools.
        'Errors'        => 'CoreError',
    
        // The Helpers.
        'Mail'          => 'HelpersMailer',
        'Assets'        => 'HelpersAssets',
        'Csrf'          => 'HelpersCsrf',
        'Date'          => 'HelpersDate',
        'Document'      => 'HelpersDocument',
        'Encrypter'     => 'HelpersEncrypter',
        'FastCache'     => 'HelpersFastCache',
        'Form'          => 'HelpersForm',
        'Ftp'           => 'HelpersFtp',
        'GeoCode'       => 'HelpersGeoCode',
        'Hooks'         => 'HelpersHooks',
        'Inflector'     => 'HelpersInflector',
        'Number'        => 'HelpersNumber',
        'RainCaptcha'   => 'HelpersRainCaptcha',
        'ReservedWords' => 'HelpersReservedWords',
        'SimpleCurl'    => 'HelpersSimpleCurl',
        'TableBuilder'  => 'HelpersTableBuilder',
        'Tags'          => 'HelpersTags',
        'Url'           => 'HelpersUrl',
    
        // The Forensics Console.
        'Console'       => 'ForensicsConsole',
    
        // The Support Classes.
        'Arr'           => 'SupportArr',
        'Str'           => 'SupportStr',
    
        // The Support Facades.
        'App'           => 'SupportFacadesApp',
        'Auth'          => 'SupportFacadesAuth',
        'Cache'         => 'SupportFacadesCache',
        'Config'        => 'SupportFacadesConfig',
        'Cookie'        => 'SupportFacadesCookie',
        'Crypt'         => 'SupportFacadesCrypt',
        'DB'            => 'SupportFacadesDatabase',
        'Event'         => 'SupportFacadesEvent',
        'Hash'          => 'SupportFacadesHash',
        'Input'         => 'SupportFacadesInput',
        'Language'      => 'SupportFacadesLanguage',
        'Mailer'        => 'SupportFacadesMailer',
        'Paginator'     => 'SupportFacadesPaginator',
        'Password'      => 'SupportFacadesPassword',
        'Redirect'      => 'SupportFacadesRedirect',
        'Request'       => 'SupportFacadesRequest',
        'Response'      => 'SupportFacadesResponse',
        'Session'       => 'SupportFacadesSession',
        'Validator'     => 'SupportFacadesValidator',
        'Log'           => 'SupportFacadesLog'
    )

    Auth

    Configuration options for use within the Auth system.

    Set default authentication driver, can be database or extended

    'driver' => 'extended'

    Set authentication model

    'model' => 'AppModelsUser'

    Set authentication table

    'table' => 'users'

    Password Reminder Settings

    /*
    | Here you may set the settings for password reminders, including a view
    | that should be used as your password reminder e-mail. You will also
    | be able to set the name of the table that holds the reset tokens.
    |
    | The "expire" time is the number of minutes that the reminder should be
    | considered valid. This security feature keeps tokens short-lived so
    | they have less time to be guessed. You may change this as needed.
    |
    */
    'reminder' => array(
        'email'  => 'Emails/Auth/Reminder',
        'table'  => 'password_reminders',
        'expire' => 60,
    )

    Cache

    Set Default storage, options: . ssdb . predis . redis . mongodb . files . sqlite . auto . apc . wincache . xcache . memcache . memcached

    'storage'   =>  'files'

    Default Path for Cache on HDD. Use full PATH like /home/username/cache. Keep it blank '', it will automatic setup for you.

    Set path

    'path' =>  STORAGE_PATH .'Cache' , // default path for files
    'securityKey' =>  '',

    FallBack Driver Example, in your code, you use memcached, apc..etc, but when you moved your web hosting until you setup your new server caching, use 'overwrite' => 'files'

    'overwrite' => 'files', // whatever caching will change to 'files' and you don't need to change ur code

    Default Memcache Server for all $cache

    'server'    =>  array(
        array('127.0.0.1',11211,1),
    )

    Cache settings:

    'memcache' => array(
        array('127.0.0.1', 11211, 1),
        //array('new.host.ip',11211,1),
    ),
    'redis' => array(
        'host' => '127.0.0.1',
        'port' => '',
        'password' => '',
        'database' => '',
        'timeout' => '',
    ),
    'ssdb' => array(
        'host' => '127.0.0.1',
        'port' => 8888,
        'password' => '',
        'timeout' => '',
    ),
    // use 1 as normal traditional, 2 = phpfastcache fastest as default, 3 = phpfastcache memory stable
    'caching_method' => 2,

    Database

    Config options:

    Set PDO fetch style

    'fetch' => PDO::FETCH_CLASS

    The Default Database Connection Name

    'default' => 'mysql'

    Set connections, additional databases can be used by adding additional arrays:

    'connections' => array(
        'sqlite' => array(
            'driver'    => 'sqlite',
            'database'  => APPDIR .'Storage' .DS .'database.sqlite',
            'prefix'    => '',
        ),
        'mysql' => array(
            'driver'    => DB_TYPE,
            'hostname'  => DB_HOST,
            'database'  => DB_NAME,
            'username'  => DB_USER,
            'password'  => DB_PASS,
            'prefix'    => PREFIX,
            'charset'   => 'utf8',
            'collation' => 'utf8_general_ci',
        ),
        'pgsql' => array(
            'driver'   => 'pgsql',
            'host'     => 'localhost',
            'database' => 'database',
            'username' => 'root',
            'password' => '',
            'charset'  => 'utf8',
            'prefix'   => '',
            'schema'   => 'public',
        ),
    )

    Languages

    Array of all supported languages

    Config::set('languages', array(
        'cz' => array('info' => 'Czech',     'name' => '?eština',    'locale' => 'cz_CZ', 'dir' => 'ltr'),
        'da' => array('info' => 'Danish',    'name' => 'Dansk',      'locale' => 'da_DK', 'dir' => 'ltr'),
        'de' => array('info' => 'German',    'name' => 'Deutsch',    'locale' => 'de_DE', 'dir' => 'ltr'),
        'en' => array('info' => 'English',   'name' => 'English',    'locale' => 'en_US', 'dir' => 'ltr'),
        'es' => array('info' => 'Spanish',   'name' => 'Español',    'locale' => 'es_ES', 'dir' => 'ltr'),
        'fa' => array('info' => 'Persian',   'name' => '?????',      'locale' => 'fa_IR', 'dir' => 'rtl'),
        'fr' => array('info' => 'French',    'name' => 'Français',   'locale' => 'fr_FR', 'dir' => 'ltr'),
        'it' => array('info' => 'Italian',   'name' => 'italiano',   'locale' => 'it_IT', 'dir' => 'ltr'),
        'ja' => array('info' => 'Japanesse', 'name' => '???',      'locale' => 'ja_JA', 'dir' => 'ltr'),
        'nl' => array('info' => 'Dutch',     'name' => 'Nederlands', 'locale' => 'nl_NL', 'dir' => 'ltr'),
        'pl' => array('info' => 'Polish',    'name' => 'polski',     'locale' => 'pl_PL', 'dir' => 'ltr'),
        'ro' => array('info' => 'Romanian',  'name' => 'Român?',     'locale' => 'ro_RO', 'dir' => 'ltr'),
        'ru' => array('info' => 'Russian',   'name' => '????????',    'locale' => 'ru_RU', 'dir' => 'ltr'),
    ));

    Mail

    Mail settings:

    Config::set('mail', array(
        'driver' => 'smtp',
        'host'   => '',
        'port'   => 587,
        'from'   => array(
            'address' => 'admin@novaframework.dev',
            'name'    => SITETITLE,
        ),
        'encryption' => 'tls',
        'username'   => '',
        'password'   => '',
        'sendmail'   => '/usr/sbin/sendmail -bs',
    
        // Whether or not the Mailer will pretend to send the messages.
        'pretend' => true,
    ));

    Modules

    To activate modules place the module name in this array

    Config::set('modules', array(
        'Dashboard',
        'Settings',
        'Demos',
        'Users',
    ));

    Routing

    These options allow routing patterns to be defined

    Config::set('routing', array(
        'patterns' => array(
            //':hex' => '[[:xdigit:]]+',
        )
    ));

    Session

    Set session options

    Config::set('session', array(
        'driver'  => 'file', // The Session Driver used for storing Session data; supported: 'file' or 'database'.
    
        'handler' => 'SessionFileSessionHandler', // The default Session Handler, using files for Session cache.
    
        // Storage configuration.
        'lifetime' => 180,           // Number of minutes the Session is allowed to remain idle before it expires.
        'files'    => STORAGE_PATH .'Sessions',  // File Session Handler - where the Session files may be stored.
        'lottery'  => array(2, 100), // Option used by the Garbage Collector, to remove the stalled Session files.
    
        // Cookie configuration.
        'cookie'   => PREFIX .'session',
        'path'     => '/',
        'domain'   => null,
        'secure'   => false,
    
        // weather or not will be used the Cookies encryption.
        'encrypt'  => true
    ));
  • 相关阅读:
    sql server 2000 “因为选定的用户拥有对象,所以无法除去该用户。”问题(含图说明)
    关于datalength函数,解决ntext等无法比较空值的问题
    Analysis service的manager无法连接,不能连接服务器(xxxxx)注册表,或者还不是olap Administrator组成员
    数据库查询问题int型字段对应以Int型数值+','组成的nvarchar型字段
    Asp与Asp.net共用cookie
    什么是SPSS
    TransactSQL语言提供的日期和时间函数(以备后用)
    关于sql语句的执行效率测试
    sqlserver数据仓库学习第一课(含资料)
    理解collate Chinese_PRC_CI_AS NULL
  • 原文地址:https://www.cnblogs.com/chunguang/p/5642948.html
Copyright © 2020-2023  润新知