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(
'Auth\AuthServiceProvider',
'Cache\CacheServiceProvider',
'Routing\RoutingServiceProvider',
'Cookie\CookieServiceProvider',
'Database\DatabaseServiceProvider',
'Encryption\EncryptionServiceProvider',
'Hashing\HashServiceProvider',
'Log\LogServiceProvider',
'Mail\MailServiceProvider',
'Pagination\PaginationServiceProvider',
'Auth\Reminders\ReminderServiceProvider',
'Session\SessionServiceProvider',
'Validation\ValidationServiceProvider',
)

Set manifest path

'manifest' => STORAGE_PATH

Set alias paths

'aliases' => array(
// The Core Tools.
'Errors' => '\Core\Error', // The Helpers.
'Mail' => '\Helpers\Mailer',
'Assets' => '\Helpers\Assets',
'Csrf' => '\Helpers\Csrf',
'Date' => '\Helpers\Date',
'Document' => '\Helpers\Document',
'Encrypter' => '\Helpers\Encrypter',
'FastCache' => '\Helpers\FastCache',
'Form' => '\Helpers\Form',
'Ftp' => '\Helpers\Ftp',
'GeoCode' => '\Helpers\GeoCode',
'Hooks' => '\Helpers\Hooks',
'Inflector' => '\Helpers\Inflector',
'Number' => '\Helpers\Number',
'RainCaptcha' => '\Helpers\RainCaptcha',
'ReservedWords' => '\Helpers\ReservedWords',
'SimpleCurl' => '\Helpers\SimpleCurl',
'TableBuilder' => '\Helpers\TableBuilder',
'Tags' => '\Helpers\Tags',
'Url' => '\Helpers\Url', // The Forensics Console.
'Console' => '\Forensics\Console', // The Support Classes.
'Arr' => '\Support\Arr',
'Str' => '\Support\Str', // The Support Facades.
'App' => '\Support\Facades\App',
'Auth' => '\Support\Facades\Auth',
'Cache' => '\Support\Facades\Cache',
'Config' => '\Support\Facades\Config',
'Cookie' => '\Support\Facades\Cookie',
'Crypt' => '\Support\Facades\Crypt',
'DB' => '\Support\Facades\Database',
'Event' => '\Support\Facades\Event',
'Hash' => '\Support\Facades\Hash',
'Input' => '\Support\Facades\Input',
'Language' => '\Support\Facades\Language',
'Mailer' => '\Support\Facades\Mailer',
'Paginator' => '\Support\Facades\Paginator',
'Password' => '\Support\Facades\Password',
'Redirect' => '\Support\Facades\Redirect',
'Request' => '\Support\Facades\Request',
'Response' => '\Support\Facades\Response',
'Session' => '\Support\Facades\Session',
'Validator' => '\Support\Facades\Validator',
'Log' => '\Support\Facades\Log'
)

Auth

Configuration options for use within the Auth system.

Set default authentication driver, can be database or extended

'driver' => 'extended'

Set authentication model

'model' => 'App\Models\User'

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' => '\Session\FileSessionHandler', // 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
));

Config的更多相关文章

  1. 一步步开发自己的博客 .NET版(11、Web.config文件的读取和修改)

    Web.config的读取 对于Web.config的读取大家都很属性了.平时我们用得比较多的就是appSettings节点下配置.如: 我们对应的代码是: = ConfigurationManage ...

  2. Discuz NT 架构剖析之Config机制

    接触了Discuz NT! 一段时间了,是时候做个总结了,标题好霸气,有木有? 都是托园子里的大牛代振军的福啊,哈哈哈哈. 首先论坛的信息不是完全存储在数据库里面的,一部分信息存储在config文件里 ...

  3. [笔记]HAproxy reload config file with uninterrupt session

    HAProxy is a high performance load balancer. It is very light-weight, and free, making it a great op ...

  4. MyBatis2:config.xml文件

    前言 前一篇文章,讲了MyBatis入门,讲到了MyBatis有两个基本的配置文件,一个用来配置环境信息,一个用来写SQL语句.前者我把它命名为config.xml,config.xml的内容是: & ...

  5. 搞了我一下午竟然是web.config少写了一个点

    Safari手机版居然有个这么愚蠢的bug,浪费了我整个下午,使尽浑身解数,国内国外网站搜索解决方案,每一行代码读了又想想了又读如此不知道多少遍,想破脑袋也想不通到底哪里出了问题,结果竟然是web.c ...

  6. WCF中,通过C#代码或App.config配置文件创建ServiceHost类

    C# static void Main(string[] args) { //创建宿主的基地址 Uri baseAddress = new Uri("http://localhost:808 ...

  7. myeclipse 无法启动 java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).

    把myeclipse10 按照目录完整拷贝到了另外一台电脑, 另外的目录 原安装目录 D\:\soft\i\myeclipse10 新安装目录 E\:\soft\myeclipse10 双击启动失败, ...

  8. PHP扩展-如何使用文件config.m4

    config.m4文件用于指定正在开发的扩展在类unix系统下构建时支持的选项,指定此扩展需要哪些库以及哪些源文件:使用 GNU autoconf 语法编写.注意需要重新执行phpize,config ...

  9. RabbitMQ Config

    默认访问地址:http://localhost:15672/ 要想修改内网访问: %APPDATA%\RabbitMQ\ 目录下添加文件 rabbitmq.config [ {rabbit, [%% ...

  10. C# 读取app.config配置文件 节点键值,提示 "配置系统未能初始化" 错误的解决方案

    新建C#项目,在app.config中添加了appSettings项,运行时出现"配置系统未能初始化"的错误,MSDN里写到,如果配置文件中包含 configSections 元素 ...

随机推荐

  1. CSS预处理器Sass(Scss)、Less、Stylus

    CSS 预处理编译器能让我成程序化其的方式编写CSS代码,可以引入CSS中没有的变量.条件.函数等特性,从而让代码更简单易维护,但一般按预处理器语法编写的代码无法直接在浏览器中运行,需用通过工具比如g ...

  2. ToString() 格式化字符串

    例如i=: i.ToString().PadLeft(,'); 固定长度为10,左不足补0,结果为0000000001:

  3. Entity Framework 增删改查和事务操作

    1.增加对象 DbEntity db = new DbEntity(); //创建对象实体,注意,这里需要对所有属性进行赋值(除了自动增长主键外),如果不赋值,则会数据库中会被设置为NULL(注意是否 ...

  4. FAT32文件系统--For TF卡

    1. TF卡空间是如何分配的? 下面以4GB TF卡为例,通过WinHex工具进行分析,其空间分配如下图所示: FAT32把目录当做文件来管理,所以没有独立的目录区,所有的文件目录项都是在数据区里面的 ...

  5. 34、Android中基于Socket的网络通信(一)

    Socket又称”套接字”,应用程序通常通过”套接字”向网络发出请求或者应答网络请求. 在java中,Socket和ServerSocket类库位于java.net包中,ServerSocket用于服 ...

  6. alibaba笔试2

    11. 12.C 13.C 14.C 关联:http://www.codingnow.com/2000/download/lua_manual.html 15.A

  7. HDU4865 Prince and Princess 强连通分量+二分图判定

    这个题就是建图费点劲,别的和我上一篇博客一样 然后,参考思路请戳这里http://www.cnblogs.com/wally/archive/2013/09/12/3317883.html 补充:这个 ...

  8. FOJ 1608 Huge Mission 线段树

    每个节点维护一个最小值,更新发现如果大于最小值,直接向下更新.速度还可以.. #include<cstdio> #include<algorithm> #include< ...

  9. 仿酷狗音乐播放器开发日志三——修复CEditUI的bug2

    无意中发现了CEditUI控件的另一个bug,当我给播放器的搜索栏获取焦点时,这时再改变窗体大小,原本搜索栏应该对应着也改变大小,却发现CEditUI内嵌的edit控件没有跟着改变(如下图),跟着调试 ...

  10. umask设置导致程序权限不足的问题

    这几天邮件告警总是发不了邮件,查看了下zext_msmtp.sh的日志,发现总是提示权限不足…… 于是切换为zabbix的账户,发现在msmtp的目录下连ls都无法执行. 之后发现是umask的问题, ...