zoukankan      html  css  js  c++  java
  • 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
    ));
  • 相关阅读:
    WP8.1 UI 编程 四、图形
    分治法 全排列问题的一个Java实现
    合并排序算法时间复杂度分析
    js如何实现复制粘贴功能
    关于<meta name="applicable-device"content="pc">
    ready
    css文字强制大写输入
    关于input,button标签在苹果手机上显示阴影解决办法
    【C#】中用if判断值是否是否为空
    视频格式MP4,需要转码
  • 原文地址:https://www.cnblogs.com/chunguang/p/5642948.html
Copyright © 2011-2022 走看看