ComposerでLaravelインストール

2016.3.6 (日)

composerを使ってLaravelインストール curlが使える場合

curlがあると簡単

curl -s http://getcomposer.org/installer | php

phpもパスが通っていると楽

php composer.phar create-project laravel/laravel approot--prefer-dist

gate/publicにDocumentRootを設定してあげてlogとかviewとかにパーミッション与えて初期インストールはだいたい終わり。

composerを使ってLaravelインストール curlが使えない場合

composer-setup.phpをダウンロード

curlが使えない環境だとこれ。しかもphpはフルパスで書かないとダメなレンタルサーバーロリポップ。

/usr/local/php5.5/bin/php -r "readfile('https://getcomposer.org/installer');" > composer-setup.php

ここで落ちてくるのはcomposer本体ではなく、composer-setup.phpなので、これを使って本体のcomposerを落としてくる。面倒くさい。

/usr/local/php5.5/bin/php composer-setup.php

これでやっとcomposer.pharが落ちてくる。

Laravelのインストール

ここまできたらいつもどおりcomposerでインストール。楽勝。ここれはapprootという名前でLarabelのディレクトリを作成しています。

/usr/local/php5.5/bin/php composer.phar create-project laravel/laravel approot --prefer-dist

インストール時のエラー処理

Laravel5のインストール後にエラーでもってうまく動かないときの手順です。

パーミションの確認

インストール時にしょっぱなから500エラーでうまく動かないときはたいていパーミッションの設定がうまくいっていない場合が多いです。(XAMPやMAMPなどPCのLocal環境にLaravelを設定した場合はパーミッションがあまりうるさくない場合があるんですが、Linuxのサーバーにインストールするとうるさいです。)
Larabel5がインストールされているディレクトリ以下にstorageというディレクトリがあるので、そこをチェック。とくにログの書き込み、キャッシュの生成ができてないというのが原因だったりします。環境によってちがいますが、ディレクトリは777か707、ファイルは666か606で設定します。

bootstrap/
   └── cache [777]

storage/
├── app
│   └── public [777]
├── framework
│   ├── cache [777]
│   ├── sessions [777]
│   └── views [777]
└── logs [777]

私がインストールした環境では上記のパーミッションで動きました。

cd gate
chmod 777 bootstrap/cache
chmod 777 storage/app/public
chmod 777 storage/framework/cache
chmod 777 storage/framework/sessions
chmod 777 storage/framework/views
chmod 777 storage/logs

環境によってはこれらのパーミッションの設定が全く必要ない場合もありましたので、そこそこオーバーパーミッションにならないように設定すればよいのかなと。

.envとkeyの初期化設定

最初のインストール時には.envファイルは作成されているのですがgit cloneとかしてくると通常はignoreしているので.env.exampleしかないと思われます。なので.envファイルを作成します。

cp -p .env.example .env

新しいハッシュキーを作成します。

php artisan key:generate
Application key [base64:urvHr3gUeZ8Df0P+cpVVUdE3XXpeIt2Jl4N4B0Esits=] set successfully.

これでだいたい正常に動くはず。

こんな画面が出たら完了



初期のコマンド確認

Laravelのバージョン確認

$ php artisan --version
Laravel Framework 5.7.13

Laravel 5.4 インストール