This document is for CakePHP's development version, which can be significantly different from previous releases.
You may want to read current stable release documentation instead.

Implantação

Uma vez que sua aplicação está completa, ou mesmo antes quando você quiser colocá-la no ar. Existem algumas poucas coisas que você deve fazer quando colocar em produção uma aplicação CakePHP.

Atualizar config/app.php

Atualizar o arquivo core.php, especificamente o valor do debug é de extrema importância. Tornar o debug igual a false desabilita muitos recursos do processo de desenvolvimento que nunca devem ser expostos ao mundo. Desabilitar o debug, altera as seguintes coisas:

  • Mensagens de depuração criadas com pr() e debug() serão desabilitadas.

  • O cache interno do CakePHP será descartado após 999 dias ao invés de ser a cada 10 segundos como em desenvolvimento.

  • Views de erros serão menos informativas, retornando mensagens de erros genéricas.

  • Erros do PHP não serão mostrados.

  • O rastreamento de stack traces (conjunto de exceções) será desabilitado.

Além dos itens citados acima, muitos plugins e extensões usam o valor do debug para modificarem seus comportamentos.

Por exemplo, você pode setar uma variável de ambiente em sua configuração do Apache:

SetEnv CAKEPHP_DEBUG 1

E então você pode definir o level de debug dinamicamente no config/app.php:

$debug = (bool)getenv('CAKEPHP_DEBUG');

return [
    'debug' => $debug,
    .....
];

Checar a segurança

Se você está jogando sua aplicação na selva, é uma boa idéia certificar-se que ela não possui vulnerabilidades óbvias:

  • Certifique-se de utilizar o Falsificação de Solicitação entre Sites (CSRF) Middleware.

  • Você pode querer habilitar o Security (Segurança). Isso pode prevenir diversos tipos de adulteração de formulários e reduzir a possibilidade de overdose de requisições.

  • Certifique-se que seus models possuem as regras Validação de validação habilitadas.

  • Verifique se apenas o seu diretório webroot é visível publicamente, e que seus segredos (como seu app salt, e qualquer chave de segurança) são privados e únicos também.

Definir a raiz do documento

Definir a raiz do documento da sua aplicação corretamente é um passo importante para manter seu código protegido e sua aplicação mais segura. As aplicações desenvolvidas com o CakePHP devem ter a raiz apontando para o diretório webroot. Isto torna a aplicação e os arquivos de configurações inacessíveis via URL. Configurar a raiz do documento depende de cada servidor web. Veja a Reescrita de URL para informações sobre servidores web específicos.

De qualquer forma você vai querer definir o host/domínio virtual para o webroot/. Isso remove a possibilidade de arquivos fora do diretório raiz serem executados.

Aprimorar a performance de sua aplicação

O carregamento de classes pode alocar facilmente o tempo de processamento de sua aplicação. A fim de evitar esse problema, é recomendado que você execute este comando em seu servidor de produção uma vez que a aplicação esteja implantada:

php composer.phar dumpautoload -o

Sabendo que manipulação de referências estáticas, como imagens, JavaScript e arquivos CSS, plugins, através do Dispatcher é incrivelmente ineficiente, é fortemente recomendado referenciá-los simbolicamente para produção. Por exemplo:

ln -s Plugin/YourPlugin/webroot/css/yourplugin.css webroot/css/yourplugin.css