CakePHP erro acho que humano.

Iniciado por Sergio Carvalho, 23 de Agosto de 2013, 18:44

tópico anterior - próximo tópico

Sergio Carvalho

Pessoal, boa noite.
Fui instalar o CakePHP pela primeira vez, assim como o Apache e MySQL com PHP5 para ambiente de Desenvolvimento, essa é a primeira vez que estou fazendo essa combinação, antes era só Win...(Opa Travou)...down. O CakePHP apresenta essa erro:

Warning: _cake_core_ cache was unable to write 'cake_dev_pt-br' to File cache in /var/www/cake/lib/Cake/Cache/Cache.php on line 310

Warning: /var/www/cake/app/tmp/cache/persistent/ is not writable in /var/www/cake/lib/Cake/Cache/Engine/FileEngine.php on line 374

Fatal error: Uncaught exception 'CacheException' with message 'Cache engine _cake_core_ is not properly configured.' in /var/www/cake/lib/Cake/Cache/Cache.php:166 Stack trace: #0 /var/www/cake/lib/Cake/Cache/Cache.php(136): Cache::_buildEngine('_cake_core_') #1 /var/www/cake/app/Config/core.php(336): Cache::config('_cake_core_', Array) #2 /var/www/cake/lib/Cake/Core/Configure.php(78): include('/var/www/cake/a...') #3 /var/www/cake/lib/Cake/bootstrap.php(171): Configure::bootstrap(true) #4 /var/www/cake/app/webroot/index.php(96): include('/var/www/cake/l...') #5 /var/www/cake/index.php(43): require('/var/www/cake/a...') #6 {main} thrown in /var/www/cake/lib/Cake/Cache/Cache.php on line 166


Eu instalei a combinação pelo lamp.

Sistema: Ubuntu 13.04(x86)
Diretorio CakePHP: /var/www/cake

Obs: Me desculpe se postei na área errada, não sabia onde colocar, sendo que esse era para ser um ambiente de desenvolvimento.

Atenciosamente,
Sérgio Carvalho

sergio@ubuntu:~$ sudo make me oral sex_
Skype: scarvalho.c
Emails: sergio.carvalho@hotmail.com.br - sergio.carvalho@outlook.com

zekkerj

Certifique-se de que o usuário "www-data" tem acesso de escrita a /var/www/cake/app/tmp/cache/persistent/, e acesso de execução em todos os diretórios do caminho.

O comando "namei -m /var/www/cake/app/tmp/cache/persistent/" vai confirmar isso.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Sergio Carvalho

Zekkerj, obrigado pela sua ajuda, esse comando que você me passou, retornar isso.

drwxr-xr-x /
drwxr-xr-x var
drwxr-xr-x www
drwxrwxr-x cake
drwxrwxr-x app
drwxrwxr-x tmp
drwxrwxr-x cache
drwxrwxr-x persistent



Como não entendo muito de linha de comando, tentei mudar a permissão pela interface usando root e quando vou abrir as propriedades da pasta persistent ele fecha o nautilus com uma mensagem de erro.
Abaixo o erro que mostra no terminal.

ERROR:nautilus-properties-window.c:1836:schedule_owner_change_timeout: assertion failed: (NAUTILUS_IS_FILE (file))

Eu podia compartilhar a imagem do erro, mas o nautilus fecha muito rápido e tem vez que nem aparece a mensagem de erro.
sergio@ubuntu:~$ sudo make me oral sex_
Skype: scarvalho.c
Emails: sergio.carvalho@hotmail.com.br - sergio.carvalho@outlook.com

zekkerj

Mais um comando.

ls -ld /var/www/cake/app/tmp/cache/persistent
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Sergio Carvalho

Segue o retorno no comando.

gabriel@Slim:~$ ls -ld /var/www/cake/app/tmp/cache/persistent
drwxrwxr-x 2 gabriel gabriel 4096 Ago 11 19:37 /var/www/cake/app/tmp/cache/persistent

sergio@ubuntu:~$ sudo make me oral sex_
Skype: scarvalho.c
Emails: sergio.carvalho@hotmail.com.br - sergio.carvalho@outlook.com

zekkerj

Certo. Veja só, o processo do php precisa escrever nessa pasta, e pra isso ele precisa ou ser o dono dela, ou se do grupo dela, e o grupo ter permissão de escrita, ou a pasta pode ter permissão de escrita pública, o que eu não recomendo.

Sugestão: mudar o dono da pasta, com o comando

sudo chown www-data:www-data /var/www/cake/app/tmp/cache/persistent
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Sergio Carvalho

Zekkerj, uma linha de erro não esta mais presente, esse comando ele altera as permissões dos sub-diretórios também?

----------------

Warning: /var/www/cake/app/tmp/cache/models/ is not writable in /var/www/cake/lib/Cake/Cache/Engine/FileEngine.php on line 374

Fatal error: Uncaught exception 'CacheException' with message 'Cache engine _cake_model_ is not properly configured.' in /var/www/cake/lib/Cake/Cache/Cache.php:166 Stack trace: #0 /var/www/cake/lib/Cake/Cache/Cache.php(136): Cache::_buildEngine('_cake_model_') #1 /var/www/cake/app/Config/core.php(348): Cache::config('_cake_model_', Array) #2 /var/www/cake/lib/Cake/Core/Configure.php(78): include('/var/www/cake/a...') #3 /var/www/cake/lib/Cake/bootstrap.php(171): Configure::bootstrap(true) #4 /var/www/cake/app/webroot/index.php(96): include('/var/www/cake/l...') #5 /var/www/cake/index.php(43): require('/var/www/cake/a...') #6 {main} thrown in /var/www/cake/lib/Cake/Cache/Cache.php on line 166
sergio@ubuntu:~$ sudo make me oral sex_
Skype: scarvalho.c
Emails: sergio.carvalho@hotmail.com.br - sergio.carvalho@outlook.com

zekkerj

CitarZekkerj, uma linha de erro não esta mais presente, esse comando ele altera as permissões dos sub-diretórios também?

Na forma que eu passei não, mas é fácil fazer que mude, basta executar como "chown -R" ao invés de "chown". Muito cuidado ao usar, pq se fizer no lugar errado vc estraga seu servidor!!!

E veja também que o diretório que está sendo reclamado nessa mensagem de erro é outro...
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D