2011-03-15 106 views
0

我已经在Ubuntu 10.10机器上安装了最新版本的CakePHP。我能够通过初学者教程运行,所以我认为我的配置接近正确。我不能让蛋糕烤完全工作。以下是我的课程。看起来像失眠的东西是粗体的。我想我的配置中必须有一个或多个小错误,这些错误在运行烘焙壳时会显现出来。谢谢!无法让蛋糕烘烤工作

[email protected]:〜$ cd/var/www/app
[email protected]:/ var/www/app $ ../cake/console/cake bake -app/var/www /应用
无法载入/usr/lib/php5/20090626.so:/usr/lib/php5/20090626.so:无法打开共享对象

文件:没有这样的文件或目录

欢迎CakePHP v1.3.2控制台

应用:app
路径:/无功/网络/应用

交互式烘烤壳牌

[d] atabase配置
[M] Odel等
[V] IEW
[C] ontroller
[P] roject
[F] ixture
[T] est case
[Q]你
你想要烘烤什么? (d/M/V/C/P/F/T/Q)

P
什么是这个应用程序包括应用程序的目录名的全路径?
示例:/无功/网络/应用程序/ MyApp的
[/无功/网络/应用程序/ MyApp的]> /无功/网络/应用
烘烤项目
SKEL指南:在/ usr /共享/ PHP /饼/控制台/模板/ SKEL
将被复制到:在/ var/WWW /应用

看行不行? (y/n/q)
[y]> y
你想要详细输出吗? (Y/N)
[N]>ý

创建:应用在/ var /网络/应用

/usr/share/php/cake/console/templates/skel/app_controller.php复制到

/var/www/app/app_controller.php
/usr/share/php/cake/console/templates/skel/app_model.php复制到
/var/www/app/app_model.php
/usr/share/php/cake/console/templates/skel/index.php复制到/var/www/app/index.php
/u sr/share/php/cake/console/templates/skel/.htaccess复制到/var/www/app/.htaccess
/usr/share/php/cake/console/templates/skel/app_helper.php复制到/无功/网络/应用/ app_helper。php

创建文件/var/www/app/views/pages/home.ctp
文件/var/www/app/views/pages/home.ctp是否存在,覆盖? (Y/N/Q)
[N]>ý
写了关于 'Security.cipherSeed'
无法创建 'Security.salt'
随机种子创建/var/www/app/views/pages/home.ctp
欢迎页面创建
随机散列密钥要设置CAKE_CORE_INCLUDE_PATH,您应该将其更改为/var/www/app/webroot/index.php
无法在/ var/www/app上设置权限// tmp
chmod -R 0777/var/www/app// tmp

交互式烘烤壳牌

[d] atabase配置
[M] Odel等
[V] IEW
[C] ontroller
[P] roject
[F] ixture
[T] est的情况下
[Q]使用

您想要烘烤什么? (d/M/V/C/P/F/T/Q)

q
[email protected]:/无功/网络/应用$

+0

我想下来设置包含路径的权利,那么php cli错误可能会消失。看起来这个蛋糕试图从这个文件夹中加载* .so,但是由于有一个额外的斜杠,它在文件夹树中“太高”了。只是一个粗略的猜测... – benjamin 2011-03-15 14:27:50

+0

马克墨菲,我加了edit2。 – benjamin 2011-03-15 15:31:40

回答

0

马克墨菲

1.

Failed loading /usr/lib/php5/20090626.so: /usr/lib/php5/20090626.so: cannot open shared object 

* .so文件是共享库。我会尝试解决它(重新)安装PHP CLI。

2.

Could not set permissions on /var/www/app//tmp 

如何能够在两次斜线爬行?这样的文件夹不应该存在。

Edit0: 这是一个有点奇怪,因为CakePHP的应该工作的权利开箱的,但也许你真的应该在应用程序/ Webroot公司/ index.php文件指定变量来看看,看看,如果你能更改CAKE_CORE_INCLUDE_PATH,以便多余的斜线消失。

编辑1: 对于一般部署,没有什么比this afaik更好。

EDIT2: cake bake help的回报:在您的app文件夹 -app绝对/相对路径。

因此,你应该叫之一:

  1. cake bake app /var/www/<your_project_name>/ <---- note the trailing slash
  2. /var/www/电话cake bake app <just_your_project_name>

EDIT3: 一言以蔽之:您可以下载的CakePHP的tar.gz并将其解压缩到您的/var/www/中,然后重命名该文件夹(有一些奇怪的cakePHP-1234 ... nam e)写入您的应用程序的名称,例如missioncontrol。然后在您的浏览器中:http://localhost/missioncontrol,按照指示进行操作。 这是一个非常快速的方法,但您可以根据构建过程开发其他方法。

在开发应用程序并打算将其部署在与本地计算机不同的主机上之后,请使用edit1下提供的链接。

+0

谢谢Benjamin,我试着重新安装php5-cli。同样的结果。 ../cake/console/cake正在尝试加载20090626.so。这个.so不存在。 20090626虽然是共享对象的目录。我搜索了我可能配置错误的蛋糕的地方。不知道为什么在/ var/www/app // tmp ... – 2011-03-15 13:56:11

+0

edit2中的建议有效。然而,蛋糕烘烤坚持把应用程序放在/ var/www/app/app。这具有使该过程正常工作的效果。它让我怀疑我是否应该在/ var/www/cakephp而不是在我的web根目录下安装cakephp。典型的做法是什么? – 2011-03-15 21:48:45

+0

Mark Murphy,我为你加了edit3。 – benjamin 2011-03-16 18:01:47