`

YII配置

    博客分类:
  • Yii
 
阅读更多

用YIIFramework的库开发

Java代码  收藏代码
  1. ....  
  2. Yii::createWebApplication($config); //没有run  

Yii::import(class1,true),在将class1类文件路径存储时,同时include该文件

注意:你也可以将配置文件分为多个文件, // 例如: db.php, params.php等等 。Yii::import('db',true); main.php

Java代码  收藏代码
  1. <?php  
  2. // 取消下行的注释,来定义一个路径别名  
  3. // Yii::setPathOfAlias('local','path/to/local-folder');  
  4.   
  5. // 这是 Web 应用配置的主体部分。任何可写的  
  6. // CWebApplication 属性可以在这里配置。  
  7. return array(  
  8.     // protected 目录的基础路径  
  9.     // 使用 Yii::app()->basePath 来访问  
  10.     'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',  
  11.   
  12.     // 应用的名字  
  13.     // 使用 Yii::app()->name 来访问  
  14.     'name'=>'My website',  
  15.   
  16.     //路径别名  
  17.     // 可以是应用内部的路径,也可以是外部资源  
  18.     'aliases'=>array(  
  19.         'myExternalFramework'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'myexternalframework'  
  20.     ),  
  21.     //维护程序时,这样子所有的请求转发到一个地方  
  22.     'catchAllRequest'=>array('site/all'),  
  23.    
  24.     //如何在应用程序处理请求之前执行一段操作?当然这个function方法要存在index.php  
  25.     'onBeginRequest' => 'function',  
  26.   
  27.     //building on above for a controller in the external  
  28.     //framework you can use the controller map to map the  
  29.     //controller path  
  30.     'controllerMap'=>array('myController'=>'myExternalFramework.controllers.MyController'),  
  31.   
  32.     // 默认的 controller  
  33.     'defaultController'=>'site',  
  34.   
  35.     // 用户语言(for Locale)  
  36.     'language'=>'es',  
  37.   
  38.     //信息和视图的语言  
  39.     'sourceLanguage'=>'es',  
  40.     'timeZone'=>'Asia/Shanghai',  
  41.     'theme'=>'school',  
  42.     // 使用的字符集  
  43.     'charset'=>'utf-8',  
  44.   
  45.     // 预载入的应用组件  
  46.     'preload'=>array('log'),  
  47.   
  48.     // 自动载入的类  
  49.     'import'=>array(  
  50.         'application.models.*',  
  51.         'application.components.*',  
  52.     ),  
  53.   
  54.     // 可以使用 Yii::app()->params['paramName'] 访问的应用级别的参数  
  55.     'params'=>array(  
  56.         'adminEmail'=>'info@example.com',  
  57.     ),  
  58.     // 注意:你也可以将配置文件分为多个文件,  
  59.     // 例如: db.php, params.php 等等。  
  60.     // 你可以这样做:  
  61.     // 'params'=>require(dirname(__FILE__).'/params.php'),  
  62.     // 在 params.php 中你需要返回这个数组:  
  63.     // return array('adminEmail'=>'info@example.com');  
  64.   
  65.     // 应用组件的配置  
  66.     'components'=>array(  
  67.         // assets, 参考www.yiiframework.com/doc/api/CAssetManager  
  68.         'assetManager'=>array(  
  69.             // 改变磁盘上的路径  
  70.             'basePath'=>dirname(__FILE__).'/../../assets/',  
  71.             // 改变url  
  72.             'baseUrl'=>'/web/assets/'  
  73.         ),  
  74.         'errorHandler'=>array(// 用 'site/error' action 处理错误  
  75.             'errorAction'=>'site/error',  
  76.         ),  
  77.         // 记录  
  78.         'log'=>array(  
  79.             // 记录器的类  
  80.             'class'=>'CLogRouter',  
  81.             // 在哪里存储日志  
  82.             'routes'=>array(  
  83.                 array(  
  84.                     // 保存到文件中,其他选项是可用的  
  85.                     'class'=>'CFileLogRoute',  
  86.                     // 什么内容保存到文件中? error 和 warning, info 和 trace 可以增加到这里  
  87.                     'levels'=>'error, warning',  
  88.                 ),  
  89.             ),  
  90.         ),  
  91.   
  92.         // 用户  
  93.         'user'=>array(  
  94.             // 启用 cookie-based 验证  
  95.             'allowAutoLogin'=>true,  
  96.             // 设置需要验证时用户被转到的 url  
  97.             // 使用 null 出现 43 HTTP 错误  
  98.             'loginUrl'=>null,  
  99.             // 设置一个类的名字,  
  100.             // 这个类扩展自 CWebUser 并且保存在  
  101.             // protected/components/<classname> 中。  
  102.             'class' => 'WebUser',  
  103.         ),  
  104.   
  105.         // 数据库  
  106.         'db'=>require(dirname(__FILE__).DIRECTORY_SEPARATOR.'db.php'),  
  107.   
  108.         // 缓存  
  109.         'cache'=>array(  
  110.             'class'=>'A cache class, like: system.caching.CApcCache',  
  111.         ),  
  112.         'session' => array( //  memcache session cache  
  113.             'class' =>'CCacheHttpSession',  
  114.             'autoStart' => 1,  
  115.             'sessionName' => 'frontend',  
  116.             'cookieParams' => array('lifetime'=>'3600','path'=>'/','domain'=>'.test.com','httponly'=>'1'),  
  117.             'cookieMode' => 'only',  
  118.         ),  
  119.         // url  
  120.         'urlManager'=>array(  
  121.             // URL 格式。必须是 'path' 或 'get'。  
  122.             // path: index.php/controller/action/attribute/value  
  123.             // get: index.php?r=controller/action&attribute=value  
  124.             'urlFormat'=>'path',  
  125.             // 显示为www.example.com/index.php/controller/action  
  126.             // 或www.example.com/controller/action  
  127.             'showScriptName' => true,  
  128.             // 转向指定的 url 到你想要的 controller 的规则  
  129.             // 查阅www.yiiframework.com/doc/guide/topics.url  
  130.             'rules'=>array(  
  131.                 //www.example.com/home代替www.example.com/site/index  
  132.                 'home'=>'site/index',  
  133.                 'post/<id:\d+>'=>'post/show',  
  134.             ),  
  135.         ),  
  136.         // 你可以使用 scriptMap 来配置脚本来自哪里。  
  137.         //If you use the split configurations for development and production you can  
  138.         // have different maps in each and then just load the file and it'll  
  139.         // load the appropriate file depending on the configuration your running.  
  140.         // 对于一个生产环境的配置,如下  
  141.         'clientScript'=>array(  
  142.             'scriptMap'=>array(  
  143.                 'register.js'=>'site.min.js',  
  144.                 'login.js'=>'site.min.js',  
  145.             ),  
  146.         ),  
  147.         // 对于一个开发环境,可以这样做  
  148.         'clientScript'=>array(  
  149.             'scriptMap'=>array(  
  150.                 'register.js'=>'register.js',  
  151.                 'login.js'=>'login.js',  
  152.             ),  
  153.         ),  
  154.     ),  
  155. );  

params.php

Java代码  收藏代码
  1. <?php  
  2. return array(  
  3.     'adminEmail'=>'info@example.com',  
  4.     'pagesize'=>'100',  
  5.     'pager'=>array(  
  6.         'class'=>'PagerWidget',   
  7.         'maxButtonCount'=>8,  
  8.         'firstPageLabel'=>'首页',  
  9.         'lastPageLabel'=>'末页',  
  10.         'nextPageLabel'=>'下一页',  
  11.         'prevPageLabel'=>'上一页',  
  12.         'header'=>'',  
  13.         'cssFile'=>false,   
  14.     ),   
  15. );   

index.php 
配置环境常量,不同环境调用不同配置文件和调试级别。

Java代码  收藏代码
  1. /** 
  2.  * 应用程序环境,可选:development,test,production, 
  3.  */  
  4. defined('APP_ENV') or define('APP_ENV','development');  
  5.   
  6. // change the following paths if necessary  
  7. if (APP_ENV == 'production') {  
  8.     error_reporting(0);  
  9.     $yii=dirname(__FILE__).'/../yii-svn/framework/yiilite.php';  
  10.     defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',1);  
  11. else {  
  12.     ini_set('error_reporting',E_ALL);  
  13.     ini_set('display_errors',1);      
  14.     $yii=dirname(__FILE__).'/../yii-svn/framework/yii.php';  
  15.     // remove the following lines when in production mode  
  16.     defined('YII_DEBUG') or define('YII_DEBUG',true);  
  17.     // specify how many levels of call stack should be shown in each log message  
  18.     defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3);  
  19. }  
  20. $config=dirname(__FILE__).'/protected/config/'.APP_ENV.'.php';  
  21.   
  22. require_once($yii);  
  23. Yii::createWebApplication($config)->run();  

development.php 
开启weblog,profile,数据库性能显示,数据库查询参数记录,GII

Java代码  收藏代码
  1. <?php  
  2. return CMap::mergeArray(  
  3.         require(dirname(__FILE__).'/main.php'),  
  4.         array(  
  5.             'components'=>array(  
  6.                 // uncomment the following to use a MySQL database  
  7.                 'db'=>require(dirname(__FILE__).'/db.php'),  
  8.                 'log'=>array(  
  9.                     'class'=>'CLogRouter',  
  10.                     'routes'=>array(  
  11.                         array(  
  12.                             'class'=>'CFileLogRoute',  
  13.                             'levels'=>'error, warning',  
  14.                         ),  
  15.                         array(  
  16.                             'class'=>'CProfileLogRoute',  
  17.                         ),  
  18.                         array(  
  19.                             'class'=>'CWebLogRoute',  
  20.                         ),  
  21.                     ),  
  22.                 ),  
  23.             ),  
  24.             'modules'=>array(  
  25.                 // uncomment the following to enable the Gii tool  
  26.                 'gii'=>array(  
  27.                     'class'=>'system.gii.GiiModule',  
  28.                     'password'=>'sa',  
  29.                     // If removed, Gii defaults to localhost only. Edit carefully to taste.  
  30.                     'ipFilters'=>array('127.0.0.1','::1'),  
  31.                 ),  
  32.             ),  
  33.         )  
  34. );  

production.php 
开启数据库结构缓存,开启CEAcceleratorCache,关闭错误显示

Java代码  收藏代码
  1. <?php  
  2. return CMap::mergeArray(  
  3.         require(dirname(__FILE__).'/main.php'),  
  4.         array(  
  5.             'components'=>array(  
  6.                 // uncomment the following to use a MySQL database  
  7.                 'db'=>require(dirname(__FILE__).'/db.php'),  
  8.                 'log'=>array(  
  9.                     'class'=>'CLogRouter',  
  10.                     'routes'=>array(  
  11.                         array(  
  12.                             'class'=>'CFileLogRoute',  
  13.                             'levels'=>'error, warning',  
  14.                         )  
  15.                     ),  
  16.                 ),  
  17.                 'cache'=>array(  
  18.                     'class'=>'system.caching.CEAcceleratorCache',  
  19.                 ),  
  20.             ),  
  21.         )  
  22. );  

分享到:
评论

相关推荐

    YII配置详解以及开发规范

    Yii 框架详解与开发规范 Yii 是一款高效的 PHP ...通过深入理解其配置、组件机制、目录结构以及部署流程,开发者能更高效地利用 Yii 构建复杂的应用程序。要了解更多细节,可以参考 Yii 快速入门教程或其他官方文档。

    YII 配置文件,不同的环境不同的配置

    标题提到的“YII 配置文件,不同的环境不同的配置”是一个关键的概念,它涉及到如何根据不同的部署环境(如开发环境、测试环境和生产环境)来定制框架的行为。 在Yii框架中,配置文件主要用于设定应用的运行时参数...

    yii配置 商城开发配置

    商城开发的配置 yii2的 里面是代码可以详细的知道所有

    netsteans下yii配置方案

    在NetBeans IDE中配置Yii项目可以帮助开发者更高效地开发和调试代码。下面将详细讲解如何在NetBeans中配置Yii框架,以及涉及的一些关键知识点。 首先,安装Yii框架。在开始配置NetBeans之前,确保你已经在本地环境...

    Yii配置文件用法详解

    通过对Yii配置文件的详细了解,可以更好地控制和优化应用的行为。 首先,Yii配置文件中可以定义多个模块(Modules),每个模块可以指定它的类路径和相关配置。如示例代码所示,'gii'模块用于代码生成工具,其类路径...

    Yii配置与使用memcached缓存的方法

    3. 修改Yii配置文件。在Yii框架中,配置文件一般位于protected/config目录下的main.php文件中。在这个文件的components数组中需要添加memcache组件的配置信息。具体而言,需要指定memcache类的路径,以及一个或多个...

    Yii2配置Nginx伪静态的方法

    本篇文章将详细解释如何在Yii2环境中配置Nginx以实现伪静态。 首先,我们来看Nginx配置的基本结构。在Nginx的配置文件中,通常有一个或多个`server`块,每个`server`块代表一个域名或IP地址的监听配置。下面是一个...

    YII cache

    1. **配置**:在 YII 配置文件中,你需要设置 `CMemCacheHttpSession` 作为默认的会话类,并指定 Memcached 服务器的连接信息。 2. **会话数据存储**:当用户开始会话时,所有与该会话相关的数据(如 $_SESSION ...

    Yii PHP 框架BLOG开发手册

    - **配置文件设置:** 如何设置基本的配置文件以启动 Yii 应用程序。 - **启动测试页面:** 如何运行第一个简单的 Yii 页面以确认一切正常。 - **1.2.3 应用程序工作流程 (Application Workflow)** - **理解请求...

    Yii2Configloader从配置文件和环境变量构建配置数组

    `Yii2 ConfigLoader` 是一个实用工具,帮助开发者从多个配置文件和环境变量中动态加载和合并配置数组,使得配置更加灵活且易于管理。 `Yii2 ConfigLoader` 的主要功能: 1. **多文件配置合并**:Yii2 允许开发者将...

    yii框架中文文档、yii中文手册教程

    1. **安装与配置**:介绍如何在服务器上安装Yii,以及设置基本的项目环境。 2. **快速入门**:通过一个简单的“Hello, World!”示例来引导开发者了解Yii的基本结构和工作原理。 3. **基础概念**:详细讲解MVC模式,...

    Yii 2文件下载

    Yii 2.0 是一款基于组件的高性能PHP框架,用于开发Web 2.0应用程序。这个框架以其高效、可扩展性和灵活性而闻名,是许多...此外,学习如何配置和优化服务器环境,如Apache或Nginx,也是成功部署Yii 2.0应用的关键步骤。

    YII2数据库MySQL复制和读写分离配置

    在使用YII2开发应用时,配置MySQL复制和读写分离能够帮助我们更好地利用资源,实现负载均衡。 在进行MySQL复制和读写分离之前,需要了解MySQL的复制原理和基本组件。MySQL的复制过程大致包括以下几个步骤:主服务器...

    yii框架中文手册教程和YII模板

    其中,安装部分会指导如何设置开发环境,包括PHP版本要求、Web服务器配置以及如何快速启动一个基本的Yii项目。配置部分解释了如何定制框架的行为,如修改默认设置、添加自定义组件等。 模型部分,会讲解如何创建和...

    yii-1.0.4.r920

    3. 配置管理:Yii 的配置系统允许开发者通过配置文件定义应用的运行时参数,如数据库连接信息、类路径等,使应用更具灵活性和可扩展性。 4. 自动化测试:Yii 支持单元测试和功能测试,提供 Codeception 测试框架...

    Yii权威指南思维导图

    Yii的URL管理器(CUrlManager)可以配置为生成和解析友好的SEO优化的URL。 视图在Yii中通过CView类实现,它负责渲染模板并输出结果。Yii支持视图助手(Helper),如CHtml,提供了许多方便的HTML生成方法。同时,Yii...

    yii2 通用后台系统

    在文件名称列表 "ytwo" 中,可能包含了该后台系统的源代码文件,例如配置文件、模型类、控制器、视图文件、公共函数库等。开发者可以通过查看这些文件深入了解系统架构和实现细节,以便进行二次开发或定制。 总的来...

    YII2.0 支付宝接口完美配置

    在本文中,我们将深入探讨如何在YII2.0框架中完美配置支付宝接口。YII2.0是一款基于组件的高性能PHP框架,适用于开发Web2.0应用。支付宝接口则是国内广泛使用的在线支付平台,为商家提供安全、便捷的支付解决方案。...

Global site tag (gtag.js) - Google Analytics