CakePHP3をインストールして、ブラウザからwebrootのindex.phpを開こうとしたところ下のエラーが出ました。見た目がおぞましいです。
結論から言えば、(app名)のフォルダ(srcフォルダやconfigフォルダなどが入っている)の「tmp」と「logs」のパーミッションを直せば、解決しました。
$ chmod -R 777 tmp $ chmod -R 777 logs $ls -la drwxr-xr-x 23 macbook staff 736 7 24 21:37 . drwxr-xr-x 5 macbook staff 160 7 24 21:44 .. -rw-r--r-- 1 macbook staff 399 7 24 21:33 .editorconfig drwxr-xr-x 12 macbook staff 384 7 24 21:33 .git -rw-r--r-- 1 macbook staff 954 7 24 21:33 .gitattributes drwxr-xr-x 4 macbook staff 128 7 24 21:33 .github -rw-r--r--@ 1 macbook staff 569 7 24 21:37 .gitignore -rw-r--r-- 1 macbook staff 349 7 24 21:33 .htaccess -rw-r--r-- 1 macbook staff 855 7 24 21:33 .travis.yml -rw-r--r-- 1 macbook staff 1677 7 24 21:33 README.md drwxr-xr-x 5 macbook staff 160 7 24 21:33 bin -rw-r--r-- 1 macbook staff 1904 7 24 21:33 composer.json -rw-r--r-- 1 macbook staff 153754 7 24 21:33 composer.lock drwxr-xr-x 11 macbook staff 352 7 24 21:33 config -rw-r--r-- 1 macbook staff 649 7 24 21:33 index.php drwxrwxrwx 5 macbook staff 160 7 24 21:33 logs -rw-r--r-- 1 macbook staff 1178 7 24 21:33 phpunit.xml.dist drwxr-xr-x 3 macbook staff 96 7 24 21:33 plugins drwxr-xr-x 9 macbook staff 288 7 24 21:33 src drwxr-xr-x 5 macbook staff 160 7 24 21:33 tests drwxrwxrwx 6 macbook staff 192 7 24 21:50 tmp drwxr-xr-x 39 macbook staff 1248 7 24 21:33 vendor drwxr-xr-x 10 macbook staff 320 7 24 21:33 webroot
cakePHPの公式ページの「パーミッション」という段落にも記載がありますが、cakePHPを使う上でapacheやnginxなどのウェブサーバーがtmpフォルダとlogsフォルダにアクセスする必要があります。
そのため、今回のようにパーミッションを777にしてしまったり(707でも動きます)、あるいはchownでそもそも所有者をwwwにすることでウェブサーバーがアクセスできるようにします。
#これでも可能 chown -R www:www tmp chown -R www:www tmp
これでも直らない場合は、config/app.phpの254行目付近「’Datasources’」の項目の設定を見直してみてください。DataBaseとの接続設定はここで行っているので、ユーザー名やパスワードが間違っている可能性があります。