如何在CodeIgniter中的htaccess中设置数据库文件路径?

时间:2017-08-17 05:48:18

标签: php codeigniter

我有Firebird数据库文件Twenty.FDB。以前它位于C:\ db文件夹中,我使用路径'database' => 'C:\db\Twenty.FDB',它工作正常。

现在我想在服务器上传我的codeigniter webservices,并希望将其路径设置为/db/Twenty.FDB。以下是我所做的更改,但它对我不起作用。我的问题是我可以使用相对路径还是只选择使用绝对路径。

$db['default'] = array(
    'dsn'   => '',
    'hostname' => 'localhost',
    'username' => 'sysdba',
    'password' => 'masterkey',
    'database' => '/db/Twenty.FDB',
    'dbdriver' => 'ibase',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'NONE',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);

1 个答案:

答案 0 :(得分:2)

使用FCPATH,因为没有FCPATH CodeIgniter认为你试图从root引用db目录。

$db['default'] = array(
    'dsn'   => '',
    'hostname' => 'localhost',
    'username' => 'sysdba',
    'password' => 'masterkey',
    'database' => FCPATH . 'db/Twenty.FDB',
    'dbdriver' => 'ibase',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'NONE',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);