在本地安装现有的CakePHP项目

在本地安装现有的CakePHP项目,php,cakephp,mamp,Php,Cakephp,Mamp,我启动了一个项目,之前的开发人员使用CakePHP,他们向我发送了他们的文件(核心和应用程序文件夹和文件)。我正在尝试使用MAMP在本地设置此项目以进行更改 我还在dropbox中保存我的文件,我没有任何CakePHP的经验,但主要通过WordPress对PHP有一些了解。不知道从哪里开始 谢谢 @summea Router::parseExtensions('csv'); Router::connect('/', array( 'controller' => 'pages',

我启动了一个项目,之前的开发人员使用CakePHP,他们向我发送了他们的文件(核心和应用程序文件夹和文件)。我正在尝试使用MAMP在本地设置此项目以进行更改

我还在dropbox中保存我的文件,我没有任何CakePHP的经验,但主要通过WordPress对PHP有一些了解。不知道从哪里开始

谢谢

@summea

Router::parseExtensions('csv');
Router::connect('/', array(
    'controller' => 'pages',
    'action' => 'view',
    'home'
));  

/**
 * ...and connect the rest of 'Pages' controller's urls.
 */
Router::connect('/pages/*', array(
    'controller' => 'pages',
    'action' => 'display'
));
Router::connect('/' . Configure::read('Routing.admin') , array(
    'controller' => 'statistics',
    'action' => 'index',
    'prefix' => Configure::read('Routing.admin') ,
    'admin' => true
));
Router::connect('/img/*', array(
    'controller' => 'attachments',
    'action' => 'view'
) , array(
    'size' => '(?:[a-zA-Z_]*)*'
));
Router::connect('/files/*', array(
    'controller' => 'attachments',
    'action' => 'view',
    'size' => 'original'
));
Router::connect('/img/*', array(
    'controller' => 'attachments',
    'action' => 'view',
    'size' => 'original'
));
Router::connect('/terms', array(
    'controller' => 'pages',
    'action' => 'display',
    'terms'
));

Router::connect('/new-idea', array(
    'controller' => 'ideas',
    'action' => 'add'    
));

虽然这类问题可能不适合StackOverflow(可能太广泛了),但是需要设置一个现有的CakePHP安装是非常现实的

根据您使用的CakePHP版本的不同,查看CakePHP书籍(/)可能是一个很好的开始(正如@Shankar在评论中所指出的)。特别是对于安装,这些CakePHP书籍版本的部分可能是一个很好的起点

注意:您可以在项目文件夹的
cake/version.txt
文件中找到CakePHP的版本

入门常见问题
  • 将现有数据库数据获取到本地数据库中
  • 确保您的
    app/config/database.php
    已设置为与数据库匹配
  • 确保你的
    app/tmp
    文件夹是“可写的”
  • 处理这些问题
  • 如果您有先前(生产)数据库的
    .sql
    文件,则可以在本地(基于MAMP的数据库中)创建新数据库,并将生产
    .sql
    文件导入新数据库。(注意:如果您没有上一个数据库的
    .sql
    文件,您可能需要找到一种访问现有/生产数据库的方法,以便将其导入到新创建的本地数据库中。这可能需要使用类似或的方法来执行实际的“数据库转储”因为您需要的数据库可能位于生产服务器上。)

  • 但是,为了连接到新创建的本地数据库,您需要确保在
    app/config/database.php
    文件中列出了正确的数据库连接信息。(基本上:确保
    主机
    登录
    密码
    数据库
    字段与新的本地数据库信息匹配。(注意:有时
    主机是这些设置中最难的部分…对于本地安装,您可能需要使用
    'host'=>'127.0.0.1',
    而不是
    'host'=>'localhost',
    …或原始/现有生产设置中使用的任何主机名。)

  • 您的
    app/tmp
    文件夹需要由“web服务器用户”设置为“可写”。您的“web服务器用户”可能取决于您的MAMP设置……并且可以以类似于中屏幕截图的方式进行设置。(注:基本上,您正在寻找一种将
    w
    写入权限设置为“打开”或“启用”的方法…适用于“连接”到MAMP设置的用户。)

  • 更新 因此,通过查看您在下面评论中发布的屏幕截图,这里有一些错误可能会有所帮助:

  • URL重写未在服务器上正确配置

    • 您可以通过单击错误消息中的
      1)Help me configure
      链接(位于上述
      URL重写
      错误消息的右侧),尝试了解CakePHP给您的建议,也可以尝试在线查找有关在MAMP环境中配置URL重写的提示,如中。

  • Cake无法连接到数据库

    • app/config/database.php
      文件是否与您的数据库凭据匹配?(并且,如您所知,请不要发布数据库文件…除非连接数据更改为通用的:)

  • 请更改app/Config/core.php中“Security.salt”的值

    • 在将来的某个时候,您可能会想要更改
      app/Config/core.php
      Security.salt
      中的字母/数字,以便字母/数字与标准安装salt值不同。(这可以通过一些在线工具随机生成……或手动完成。)

  • 请更改app/Config/core.php中“Security.cipherSeed”的值

    • 这类似于上面的#3…但用于“Security.cipherSeed”而不是“Security.salt”(它似乎是一个仅由数字组成的字符串,而不是字母/数字)


  • 您是否有任何错误?您遵循了哪些步骤?嗯,您查看了吗?我得到了一个空白屏幕,但在我的错误日志
    [MissingControllerException]找不到控制器类AppsController。
    @NemesisThanks寻求帮助!我可以从.sql文件导入数据库并配置app/config/database.php,但当我访问我的应用程序时,仍然会看到一个空白屏幕。我得到的文件夹结构与默认结构不同。我有:app/core/--lib/…而不是:app/lib/I打开了调试级别2并清除了所有缓存文件,但仍然看到一个空白屏幕。不过,我确实在错误日志中看到了这一点:
    [MissingControllerException]找不到控制器类AppsController。
    我确实注意到了这一差异,并认为这可能是拼写错误,也可能是无法正常工作的原因。您是指主要部分(规则)吗就像在代码中一样,像这样?我将在上面的问题中发布它。谢谢!谢谢!我看到的是
    testsapscontroller
    和错误日志。这是我得到的。这很好,谢谢!!是的,忘记编辑数据库文件了:\