我正在使用Wamp服务器而我正在尝试安装CakePHP 2.0.0,但我遇到了麻烦。
我将CakePHP 2.0.0文件放在我的wamp
服务器文件夹“www
”中,然后放在“cake
”文件夹中。
当我在浏览器中输入地址http://localhost/cake
时,会显示以下消息:
CakePHP: the rapid development php framework
Release Notes for CakePHP 2.0.0-dev.
Notice (1024): Please change the value of 'Security.salt' in app/config/core.php to a salt value specific to your application [CORE\Cake\Utility\Debugger.php, line 647]
Notice (1024): Please change the value of 'Security.cipherSeed' in app/config/core.php to a numeric (digits only) seed value specific to your application [CORE\Cake\Utility\Debugger.php, line 651]
Your tmp directory is writable.
The FileEngine is being used for caching. To change the config edit APP/config/core.php
Your database configuration file is present.
Cake is NOT able to connect to the database.
Editing this Page
To change the content of this page, create: APP/views/pages/home.ctp.
To change its layout, create: APP/views/layouts/default.ctp.
You can also add some CSS styles for your pages at: APP/webroot/css.
答案 0 :(得分:13)
我遇到了同样的问题,需要进行大量研究才能确定实际问题。
CakePHP的新版本使用pdo建立连接,而不是像之前那样建立mysql或mysqli。在使用Windows环境时,只需在php.ini文件中启用以下内容。
延长= php_pdo_mysql.dll
没有使用root,我也发现在尝试从1.3移动到2.0时真的很烦恼
至于deceze的傲慢回答,我在CakePHP下载/安装/文档的任何地方都没有发现这种变化。
答案 1 :(得分:6)
由于缺乏声誉我不能投票,但是我想指出,尽管你的问题(部分是正确的)评论,George Wood完全正确:你需要启用
extension = php_pdo_mysql.dll(Windows)
或者对我而言,它是extension = pdo_mysql.so(Arch Linux)
......也可能有一些变种。我刚刚和这个人争吵了一个小时。祝你的编码工作顺利。
答案 2 :(得分:4)
我对Cakephp的问题在Ubuntu上解决了这个问题:
sudo apt-get install php5-mysql
sudo /etc/init.d/apache2 restart
我正在使用Ubuntu 10.04,MySQL,Apache2和PHP5。
一旦我这样做,我就可以使用我创建的MySQL用户。所以它不是一个cakephp配置错误,它不知道默认情况下没有安装php5-mysql。
答案 3 :(得分:3)
它们不是错误,它们是通知。这意味着您可以执行一些配置以使其工作。阅读他们并做他们告诉你的事情。好像config/
中发生了错误,请注意提供正确的信息,例如数据库的名称和密码。
修改强>
回答你的问题,CakePHP是一个PHP框架,可以帮助你在MVC模型中构建你的网站。相反,通过使用框架从头开始编写源代码,您可以继承其所有功能,从而加快开发时间,帮助您更轻松地处理更复杂的结构/过程。
答案 4 :(得分:1)
如果您还没有解决数据库的连接问题,请尝试对这些位进行完整性检查..
'mysql'(在1.3中确定)必须指定为'Database / Mysql'
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'root',
'password' => '',
'database' => 'sandbox',
'prefix' => '',
'encoding' => 'utf8');
如果有效,请告诉我。 (我试图重用我原来的1.3配置并陷入同一个循环。)
答案 5 :(得分:0)
请找到如下所示的解决方案。
注意(1024):请将app / config / core.php中'Security.salt'的值更改为特定于您的应用程序的盐值[CORE \ Cake \ Utility \ Debugger.php,第647行]
解决方案:彻底查看此文件app / config / core.php 找到Security.salt并将其更改为任何值。
注意(1024):请将app / config / core.php中'Security.cipherSeed'的值更改为特定于应用程序的数字(仅数字)种子值[CORE \ Cake \ Utility \ Debugger.php,第651行]
解决方案:彻底查看此文件app / config / core.php 找到Security.cipherSeed并将其更改为任何值。
您的tmp目录是可写的。
解决方案:为此路径app / tmp
授予适当的权限Cake无法连接到数据库。
解决方案:仔细阅读此文件app / config / database.php 为数据库连接设置适当的参数。
答案 6 :(得分:0)
在这里添加这个...我遇到了这个(和其他类似的解决方案),但最近才发现问题。由于其他软件问题,我的自定义Apache构建存在问题,并决定快速获得工作环境,而不是重新格式化我的PC。
我首先安装了Apache 2.4和PHP 5.4。遗憾的是,这些版本与我的大多数代码都不兼容,而且,我想快速获得一个工作环境,所以我卸载并使用Apache 2.2和PHP 5.3重新启动WAMP。
在某些时候,WAMPServer正在查看我的php.ini文件的C:\ Program Files(x86)\ PHP \ php.ini。我不知道它是怎么或为什么看那里。不幸的是我正在编辑C:\ wamp \ bin \ php \ php5.3.13 \ php.ini。我没有意识到为什么MySQL没有工作,直到我加载了对phpinfo()的调用,并注意到PHP正在查找我的php.ini的“错误”位置。
如果其他人有类似的问题,我想我会在这里添加它。祝你好运!
答案 7 :(得分:0)
我有同样的问题,我想出来了。
我有错误的用户名和密码用于数据库连接。
所以我打开了数据库并编辑了database.php
文件。现在,cake可以连接到数据库了。
答案 8 :(得分:0)
最近我在Windows机器上安装xampp遇到了同样的问题,对我来说这是因为输入细节时
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
windows无法将localhost解析为127.0.0.1,这可以通过以下任一解决方案解决: 将app / Config / database.php中的详细信息更改为
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => '127.0.0.1',
或在Windows C:\ Windows \ System32 \ drivers \ etc \ hosts中编辑(您可能需要以管理员身份运行Nopepad.exe才能执行此操作)
在最后添加一行:
127.0.0.1 localhost
答案 9 :(得分:0)
我通过将xampp从7.0版降级到5.6版来解决了这个错误。似乎更新的xampp不完美支持cakeframework。我用这个技巧也成功安装了orangescrum。
答案 10 :(得分:-2)
在mysql的本地主机上,必须使用用户“root”而不是任何其他用户。希望这会有所帮助。
同时检查this。