設(shè)置好站點后,接下來要做的就是配置站點。 application/config 文件夾包含一組用于設(shè)置站點基本配置的文件。
配置基本 url
站點的基本 url 可以在 application/config/config.php 文件中配置。它是您的 codeigniter 根的 url。通常,這將是您的基本 url,帶有尾部斜杠,例如
http://example.com/
如果未設(shè)置,則 codeigniter 將嘗試猜測您安裝的協(xié)議、域和路徑。但是,您應(yīng)該始終明確地配置它并且永遠(yuǎn)不要依賴自動猜測,尤其是在生產(chǎn)環(huán)境中。您可以使用鍵"base_url"在 $config 數(shù)組中配置基本 url,如下所示:
$config['base_url'] = 'http://your-domain.com';
數(shù)據(jù)庫配置
站點的數(shù)據(jù)庫可以在application/config/database.php文件中配置。通常我們需要為不同的環(huán)境(如開發(fā)和生產(chǎn))設(shè)置數(shù)據(jù)庫。通過 codeigniter 中提供的多維數(shù)組,我們可以為不同的環(huán)境設(shè)置數(shù)據(jù)庫。配置設(shè)置存儲在數(shù)組中,如下所示:
$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() );
除了主機名、用戶名、密碼、數(shù)據(jù)庫和 dbdriver 之外,您可以保留幾個選項的默認(rèn)值。
- hostname-在此處指定數(shù)據(jù)庫的位置,例如本地主機或 ip 地址
- username-在此處設(shè)置數(shù)據(jù)庫的用戶名。
- password-在此處設(shè)置數(shù)據(jù)庫的密碼。
- database-在此處設(shè)置數(shù)據(jù)庫的名稱。
- dbdriver-設(shè)置您正在使用的數(shù)據(jù)庫類型,例如mysql、mysqli、postgre sql、odbc 和 ms sql。
通過改變數(shù)組 $db的key,可以設(shè)置數(shù)據(jù)庫的其他配置,如下圖。在這里,我們將密鑰設(shè)置為 ‘test’ 以設(shè)置用于測試環(huán)境的數(shù)據(jù)庫,保持其他數(shù)據(jù)庫環(huán)境不變。
$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() );
您可以通過更改變量的值來簡單地切換到不同的環(huán)境,如下所示:
$active_group = ‘默認(rèn)’;//這將設(shè)置默認(rèn)環(huán)境
$active_group = ‘test’;//這將設(shè)置測試環(huán)境
自動加載配置
默認(rèn)情況下,此文件指定應(yīng)加載哪些系統(tǒng)。為了保持框架盡可能輕量級,默認(rèn)只加載絕對最少的資源。應(yīng)該自動加載經(jīng)常使用的系統(tǒng),而不是在本地級別重復(fù)加載它。以下是您可以自動加載的內(nèi)容:
- libraries-它是一個庫列表,應(yīng)該自動加載。提供一個數(shù)組中的庫列表,如下所示,由 codeigniter 自動加載。在此示例中,我們將自動加載數(shù)據(jù)庫、電子郵件和會話庫。
$autoload['libraries'] = array('database', 'email', 'session');
- drivers-這些類位于 system/libraries/或您的 application/libraries/目錄中,但也位于它們自己的子目錄中,它們擴展了 ci_driver_library 類。它們提供多種可互換的驅(qū)動程序選項。以下是自動加載緩存驅(qū)動程序的示例。
$autoload['drivers'] = array('cache');
- helper files-這是一個幫助文件列表,要自動加載。提供數(shù)組中的庫列表,如下所示,由 codeigniter 自動加載。在給定的示例中,我們正在自動加載 url 和文件幫助程序。
$autoload['helper'] = array('url', 'file');
- custom config files-這些文件僅供您使用,前提是您已創(chuàng)建自定義配置文件。否則,將其留空。以下是如何自動加載多個配置文件的示例。
$autoload['config'] = array('config1', 'config2');
- language files-它是一個語言文件列表,應(yīng)該自動加載。看看下面給出的例子。在數(shù)組中提供語言列表,如下所示,由 codeigniter 自動加載。請記住,不要包含文件的"_lang"部分。例如,"codeigniter_lang.php"將被引用為 array('codeigniter');
- models-它是一個模型文件列表,應(yīng)該自動加載。提供一個數(shù)組中的模型列表,如下所示,由 codeigniter 自動加載。以下是如何自動加載多個模型文件的示例。
$autoload['model'] = array('first_model', 'second_model');