読者です 読者をやめる 読者になる 読者になる

console.lealog();

@leader22のWeb系に関する勉強めもブログですのだ

PHPのLaravel4を動かすまでの道のり

いわゆる作業ログ。

そもそもPHPなんて2年ぶりくらいに触るのと、開発環境の構築なんて門外漢なので、かなり時間かかりました・・。
肝心の開発はもちろん進捗ダメです。

Laravel4をインストールする

参考: Laravel - The PHP framework for web artisans.

最新のバージョンは4で、PHP5.4以上が必要とのこと。
インストールしてある前提で・・。

そのほか、php-mcrypto も必要だそうな。

Composerのインストール

Laravel自体のインストールは、Composerってやつでできるとのこと。
Composerってのは、PHP界のnpmみたいなもんですかね。

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

ってすると、パスも通ってどこでも

composer

できるようになります。

参考: Composer

Laravelでプロジェクトを作る

composer create-project laravel-ja/laravel myapp --prefer-dist

ってすると、myappディレクトリ以下にファイルがごそっとDLされます。

nginxの設定

もちろん、いわゆるdocumentRootとか設定しないとダメで。
うちのサーバーは、PHPphp-fpmで動かしてるので以下のようにしました。

これが一番しんどかった。

server {
    listen  80;
    server_name hoge.example.com;

    access_log  /var/www/hoge/logs/access.log;
    error_log   /var/www/hoge/logs/error.log;

    root /var/www/hoge/myapp/public;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    if (!-d $request_filename) {
            rewrite ^/(.+)/$ /$1 permanent;
    }

    location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        fastcgi_pass    127.0.0.1:9000;
        fastcgi_index   index.php;
        fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    location = /favicon.ico {
        access_log off;
        log_not_found off;
    }

    location = /robots.txt {
        access_log off;
        log_not_found off;
    }
}

Laravel的お作法として、rootには myapp/public を指定すべしとのこと。
シンボリックリンクで色々ごまかすテクニックもあるらしい。

そのほか

chmod -R 777 myapp/app/storage

このディレクトリ以下に書き込み権限が必要。

ここまでやると

アクセスすると、
You have arrived. って労いのスプラッシュページが表示されます。

まだ何もできてないけど、いやはや長かったわ・・・。