Instalando o cakePHP

Atendendo a pedidos de principalmente alguns alunos, vou tentar de forma mais simples possível, passar neste post como instalar o cakephp.

Como todo projeto Open source, e com o cake não deve ser diferente,  devemos ter bastante atenção com o versionamento da ferramenta.

Atualmente, estou desenvolvendo uma aplicação interna para a empresa usando a versão 1.3.8, sendo assim, eu sugiro que, caso não tenha muito conhecimento, siga na risca o tutorial, pois pode haver alguma mudança significativa de uma versão para outra que atrapalhe seu aprendizado.

Primeiro faça download da aplicação neste link: https://github.com/cakephp/cakephp/downloads.

Descompacte o arquivo em seu diretório de trabalho(diretório que você costuma acessar via navegador pelo endereço localhost).

Renomeie o diretório para cakephp (de forma que ele seja acessível pelo seu navegador no endereço  localhost/cakephp ).

Acesse o endereço http://localhost/cakephp/ e veja que você receberá alguns avisos de que faltam algumas alterações.

Clique na imagem para ampliá-la

A primeiras linhas são mensagens do PHP e se elas não apareceram para você , aconselho que você defina nas configurações de seu PHP para que seja exibidas mensagens desse tipo.

As duas próximas linhas, também são geradas pelo PHP e só serão exibidas caso a variável necessária em seu PHP esteja definida para que isso ocorra.

A linha que diz Your tmp directory is NOT writable, e foi gerada pelo cake para lhe informar que o diretório  /cakephp/app/tmp/ não é gravável e você agora precisa tornar esse diretório gravável pelo seu sistema operacional, no Ubuntu você pode fazer da seguinte forma:

chmod -R 777 www/cakephp/app/tmp/

Agora, que já tornamos o diretório tmp gravável, precisamos altera duas propriedades no arquivo core.php localizado em cakephp/app/config. São elas Security.salt e Security.cipherSeed

Localize as seguintes linhas:

/**
* A random string used in security hashing methods.
*/
Configure::write('Security.salt', 'DYhG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi');

/**
* A random numeric string (digits only) used to encrypt/decrypt strings.
*/
Configure::write('Security.cipherSeed', '76859309657453542496749683645');

Altere como informado abaixo

/**
* A random string used in security hashing methods.
*/
Configure::write('Security.salt', 'ALTERE AQUI!');

/**
* A random numeric string (digits only) used to encrypt/decrypt strings.
*/
Configure::write('Security.cipherSeed', 'ALTERE AQUI!);

 

Acesse novamente a página principal e observe ainda há um aviso de que você ainda não configurou o arquivo necessário por informar os dados do banco de dados:

Your database configuration file is NOT present.
Rename config/database.php.default to config/database.php

No diretório cakephp/app/config renomeie o arquivo database.php.default para database.php

 

Agora temos que informar ao cake qual o banco de dados usaremos e quais são os dados de localização:

Edite o aquivo renomeado database.php

var $default = array(
'driver' => 'mysql', // Informe o drive do banco de dados
'persistent' => false, // Se usará ou não uma conexão persistente. Deixe como false
'host' => 'localhost', // Endereço do servidor do banco de dados
'login' => 'root', // Nome de usuário
'password' => '', // Senha usado pelo usuário informado, no meu caso não utilizo senha no servidor local
'database' => 'cakephp', // Nome do banco de dados
'prefix' => '', // Prefixo usado antes dos nomes das entidades
);

Acesse ou atualize a página novamente e se o banco informado ainda não tiver sido criado você verá o aviso:

Cake is NOT able to connect to the database

Caso ainda não tiver criado o banco, crie e veja que a página estará sem nenhum aviso em amarelo.

E isso aí, agora você tem o cake instalado e a ponto de bala pra começar um novo projeto, no próximo post vamos desenvolver algo simples para começarmos pegar o gostinho.

Abração!

Marcado com: , , ,
2 comentários sobre “Instalando o cakePHP
  1. Christiano disse:

    Olá, gostaria de sua ajuda. Grato.

    Fiz o download do cakephp, descompactei o conteúdo para dentro de uma pasta também chamada cakephp e a coloquei na pasta localweb, ficando a URL de acesso assim:

    http://127.0.0.1/cakephp/

    Em um segundo momento fiz uma cópia da pasta app e renomei:

    http://127.0.0.1/cakephp/teste1

    No entanto este comportamento não se repete na hospedagem online:

    http://www.site.com.br/cakephp/teste1,

    o cake me pergunta pelo controller: “CakephpController could not be found.”

    Fiz esta alteração: Router::connect(‘/cakephp/’, array(‘controller’ = ‘pages’, ‘action’ = ‘display’, ‘home’));

    mas o cake continuou achando que cakephp é um controller que sumiu…

    O que posso fazer para obter, on line, o mesmo comportamento local?

  2. Jackson Bicalho disse:

    Fala Christiano, beleza?

    Cara, é o seguinte:
    Em primeiro lugar, a pasta app não deve ser renomeada.

    Quando você menciona:
    “Fiz esta alteração: Router::connect(‘/cakephp/’, array(‘controller’ = ‘pages’, ‘action’ = ‘display’, ‘home’));”

    Você estão fazendo um roteamento para quando site.com/cakephp procure pelo controlador pages, método display, usando um view de nome home.

    Para fazer com que tudo aconteça normalmente, apenas siga os passos acima, que dará certo.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

*