CodeIgniter - 配置



网站搭建完成后,接下来要做的是配置网站。application/config 文件夹包含一组文件,用于设置网站的基本配置。

配置基本 URL

网站的基本 URL 可以通过 application/config/config.php 文件配置。它是 CodeIgniter 根目录的 URL。通常,这将是您的基本 URL,带尾部斜杠,例如:

http://example.com/

如果没有设置,CodeIgniter 将尝试猜测安装的协议、域名和路径。但是,您应该始终显式配置此项,切勿依赖自动猜测,尤其是在生产环境中。您可以在 $config 数组中使用键“base_url”配置基本 URL,如下所示:

$config['base_url'] = 'http://your-domain.com';

数据库配置

网站的数据库可以在 application/config/database.php 文件中配置。通常,我们需要为不同的环境(例如开发和生产)设置数据库。使用 CodeIgniter 提供的多维数组,我们可以为不同的环境设置数据库。配置设置存储在如下所示的数组中:

$db['default'] = array( 
   'dsn'   => '', 
   'hostname' => 'localhost', 
   'username' => 'root', 
   'password' => '', 
   'database' => 'database_name', 
   'dbdriver' => 'mysqli', 
   'dbprefix' => '', 
   'pconnect' => TRUE, 
   'db_debug' => TRUE, 
   'cache_on' => FALSE, 
   'cachedir' => '', 
   'char_set' => 'utf8', 
   'dbcollat' => 'utf8_general_ci',
   'swap_pre' => '', 
   'encrypt' => FALSE, 
   'compress' => FALSE, 
   'stricton' => FALSE, 
   'failover' => array() 
);

您可以将一些选项保留为默认值,除了主机名、用户名、密码、数据库和数据库驱动程序。

  • 主机名 - 在此处指定数据库的位置,例如 localhost 或 IP 地址

  • 用户名 - 在此处设置数据库的用户名。

  • 密码 - 在此处设置数据库的密码。

  • 数据库 - 在此处设置数据库的名称。

  • 数据库驱动程序 - 在此处设置您使用的数据库类型,例如 MySQL、MySQLi、Postgre SQL、ODBC 和 MS SQL。

通过更改数组$db的键,您可以设置数据库的其他配置,如下所示。在这里,我们将键设置为‘test’以设置测试环境的数据库,同时保留其他数据库环境不变。

$db['test'] = array( 
   'dsn'   => '', 
   'hostname' => 'localhost', 
   'username' => 'root', 
   'password' => '', 
   'database' => 'database_name', 
   'dbdriver' => 'mysqli', 
   'dbprefix' => '', 
   'pconnect' => TRUE, 
   'db_debug' => TRUE, 
   'cache_on' => FALSE, 
   'cachedir' => '', 
   'char_set' => 'utf8', 
   'dbcollat' => 'utf8_general_ci', 
   'swap_pre' => '', 
   'encrypt' => FALSE, 
   'compress' => FALSE, 
   'stricton' => FALSE, 
   'failover' => array()
);

您可以通过更改变量的值来简单地切换到不同的环境,如下所示:

$active_group = ‘default’; // 这将设置默认环境

$active_group = ‘test’; // 这将设置测试环境

自动加载配置

此文件默认指定应加载哪些系统。为了使框架尽可能轻量级,默认情况下只加载绝对最少的资源。应该自动加载频繁使用的系统,而不是在本地级别重复加载它。以下是您可以自动加载的内容:

  • - 这是一个库列表,应该自动加载。在数组中提供如下所示的库列表,以便 CodeIgniter 自动加载。在这个例子中,我们自动加载数据库、邮件和会话库。

$autoload['libraries'] = array('database', 'email', 'session');
  • 驱动程序 - 这些类位于 system/libraries/ 或 application/libraries/ 目录中,但也放置在其自己的子目录中,并且它们扩展了 CI_Driver_Library 类。它们提供了多个可互换的驱动程序选项。以下是自动加载缓存驱动程序的示例。

$autoload['drivers'] = array('cache');
  • 辅助文件 - 这是一个辅助文件列表,需要自动加载。在数组中提供如下所示的库列表,以便 CodeIgniter 自动加载。在给定的示例中,我们自动加载 URL 和文件辅助函数。

$autoload['helper'] = array('url', 'file');
  • 自定义配置文件 - 这些文件仅在您创建自定义配置文件时才用于。否则,请留空。以下是如何自动加载多个配置文件的示例。

$autoload['config'] = array('config1', 'config2');
  • 语言文件 - 这是一个语言文件列表,应该自动加载。请查看下面的示例。在数组中提供如下所示的语言列表,以便 CodeIgniter 自动加载。请记住,不要包含文件的“_lang”部分。例如,“codeigniter_lang.php”将被引用为数组('codeigniter');

  • 模型 - 这是一个模型文件列表,应该自动加载。在数组中提供如下所示的模型列表,以便 CodeIgniter 自动加载。以下是如何自动加载多个模型文件的示例。

$autoload['model'] = array('first_model', 'second_model');
广告