PHPerなので、Laravel5を実際にさわってみることにする。
Laravelとは
最近巷ではやっているphpのフレームワークで、近年のモダンな書き方をとりいれていて 今風にphpが書ける。
手順
各種インストール
公式サイトからdmgファイルをダウンロードしてきてインストールする。
公式サイトからdmgファイルをダウンロードしてインストールする。
curl -sS https://getcomposer.org/installer | php
mv ./composer.phar /usr/local/bin/composer
あとPATHも通す、もしくはPATHの通っているディレクトリに移動する。
Boxの作成・Homestead準備
vagrant box add laravel/homestead
git clone https://github.com/laravel/homestead.git Homestead
cloneしたHomesteadディレクトリに移動し、init.shを実行する。
cd ./Homestead
bash init.sh
これで、~/.homestead 配下に必要なファイルたちがどこどこ作られる。
vagrantで仮想マシンを立ち上げたとき用の鍵ペアを作成する。 (すでにある場合はつくらなくても大丈夫?)
ssh-keygen -t rsa -C "you@homestead"
設定ファイル記述
設定ファイルの場所
~/.homestead/Homestead.yaml
以下の様に修正する (修正がいらない箇所は省略します)
※作業用ディレクトリを~/workとし、その配下に後述のlaravelプロジェクトの作成の際にlaravelディレクトリを作成する。
providor: virtualbox
authorize: ~/.ssh/id_rsa.pub
key:
- ~/.ssh/id_rsa
folders:
- map: ~/work/laravel
to: /home/vagrant/Code/laravel
sites:
- map: homestead.app
to: /home/vagrant/Code/laravel/public
- providorにはvirtualboxを指定
- authorizeとkeyには以前の手順で作成したキーペアへのパスを指定
- foldersはローカルと、vagrant上で同期をとるためのマッピング
- sitesはurlと公開フォルダのマッピング
この場合 http://homestead.app にアクセスすると/home/vagrant/Code/laravel/public配下がドキュメントルートとなる。
Hostsの設定
/etc/hostsに以下の記述を追加する。
192.168.10.10 homestead.app
192…の部分はHomestead.yamlに記載されているipを、 その後はsitesのmapの方のurlを記述する。
Laravel Projectの作成
作業用ディレクトリに移動して以下のコマンドを打つ
composer create-project laravel/laravel laravel --prefer-dist
そうするといろいろダウンロードが始まって、laravelフレームワークが使えるようになる。
以下のコマンドでvagrant立ち上げる
homestead up
ブラウザでhttp://homestead.appにアクセスして以下のページになればOK
手順は以上です。
うまく行かない場合
nginx php no input file specifiedと表示される
nginxがphpファイルを見つけられていないので、hostsや、Homestead.yamlを要確認
vendor/autoload.phpが無いよって怒られる。
以下の様な画面が表示され、vendor/autoload.phpが無いよって言われる
vagrantにsshでログインしてcomposer installで色々インストールする。
homestead ssh
cd /home/vagrant/Code/laravel/
composer install
no supported encrypted foundと怒られる
以下の様な画面が表示された場合。
プロジェクトのディレクトリに移動してkey:generateする
homestead ssh
cd /home/vagrant/Code/laravel/
php artisan key:generate
参考させていただいたサイト様
- Laravel5がリリースされたので解説サイト作った
- そろそろ暖かくなってきたし CentOS6 に Laravel5 をインストールしてみた
- CentOSにPHP5.5をインストール
- Laravel Homesteadを使ってみよう!
- Laravelで…vendor/autoload.php): failed to open stream: No such file or directory というエラーによりデフォルト画面が表示されない解決方法
- No supported encrypter found. The cipher and / or key length are invalid. (laravel 5.1))