cloud9でPHPの環境を構築した直後にlaravelをインストールしてプロジェクトを作成しようとすると、
Your requirements could not be resolved to an installable set of packages.
...
This package requires php >= 5.6.4 but your PHP version (5.5.9) does not satisfy that requirement.
とアレコレ表示されてプロジェクトが作れなかったので対処したメモ
workspaceに初期配置されてるファイルはどっかへ逃がしておくと楽
(これは別にやらなくても構わない)
$ mkdir ../trash
$ mv ./* ../trash
PHPを5.5.9から5.6へ
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get install libapache2-mod-php5.6
$ sudo a2dismod php5
$ sudo a2enmod php5.6
$ sudo add-apt-repository ppa:ondrej/php5-compat
$ sudo apt-get update
$ sudo apt-get dist-upgrade
Laravelインストール
$ sudo composer global require 'laravel/installer'
なんか怒られるけど気にせずスルー。laravelコマンドへのパスを通す
$ echo "export PATH=\$PATH:~/.composer/vendor/bin" >> ~/.profile
$ source ~/.profile
$ which laravel
パスが表示されればOK
プロジェクト作成
$ laravel new sample
なんか怒られるけど出来てるっぽい
ドキュメントルートをapp/publicに
$ sudo nano /etc/apache2/sites-enabled/001-cloud9.conf
DocumentRootのところを変えて、[F2]->[Y]->[ENTER]
/home/ubuntu/workspace/sample/public
データベースのセットアップ
$ mysql-ctl install
$ mysql-ctl start
$ mysql-ctl cli
mysql> show databases;
c9という空のデータベースを使うも良し、好きな名前で作っても良し。
※Cloud9のデータベースはパスワードが設定されていないので、気になる人は適切な設定を。
データベースへの接続設定
$ cp ~/workspace/sample/.env.example ~/workspace/sample/.env
$ vi ~/workspace/sample/.env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_created_database_name
DB_USERNAME=your_cloud9_username
DB_PASSWORD=
DB_PASSWORDは空でOK。設定した場合はそのパスワードを。
アプリケーショキーを設定
$ php artisan key:generate
Node.js(?)のアップデート
$ cd sample
$ sudo npm install -g npm
$ npm install
$ nvm install 7.5.0
$ npm rebuild node-sass
$ npm run dev
npm installのところで大分待たされるけど、ここまでやれば一応laravelが動くようになる
こちらに手順や出来上がった環境など置いてあります
https://github.com/uchikoba/LaravelTrainning
handson.txtの手順に添えば超手抜きですけどToDo管理アプリみたいなものが作れるところまで書いてあります。