我正在使用CakePhp 2.8.5,我在database.php中有以下配置
class DATABASE_CONFIG {
public $default = array(
'datasource' => 'Database/Sqlite',
'persistent' => false,
'database' => 'MyDB.sqlite3',
//'encoding' => 'utf8',
);
public $test = array(
'datasource' => 'Database/Sqlite',
'persistent' => false,
'database' => 'MyDB-test.sqlite3',
//'encoding' => 'utf8',
);
}
我的sqlite数据库文件位于我的cakephp web应用程序的根文件夹中。
sqlite文件都具有每个人的读/写/执行权限。
我的Php.ini文件配置为sqlite启用了PDO扩展。
我可以使用我的CakePHP内部Web服务器在MAC OS X 10.11.5终端上使用以下命令连接到sqlite3数据库:./lib/Cake/Console/cake server -p 8080
但是当我尝试使用vhost.conf中配置的web应用程序在MAC OS X上的XAMPP服务器上运行它时,它无法连接到sqlite3 db。
<VirtualHost *:80>
ServerName cakeapp
DocumentRoot "/Users/userXXX/website/cakeapp"
<Directory "/Users/userXXX/website/cakeapp">
Options Indexes FollowSymLinks Includes execCGI
AllowOverride all
Require all granted
</Directory>
ErrorLog "/Users/userXXX/website/cakeapp/error.log"
</VirtualHost>
但是,当我连接到我的本地apache http服务器(cakeapp /)上的cakephp web app时,我收到以下错误消息:
CakePHP is NOT able to connect to the database.
Database connection "Sqlite" is missing, or could not be created.
那么为什么当我使用内部http服务器(localhost:8080)连接到cakeapp时它会起作用,而当我尝试从XAMPP中的localhost默认apache Web服务器连接到它时它不起作用?