centos6.6にLaravel(PHPフレームワーク)+Sentry(会員管理機能)をインストールしてみた。
会員サイトを簡単に作れるPHPフレームワークと聞いて勉強中!
まず、Composer(PHPパッケージ管理ソフト, PHP専用のapt-getやyumみたいなやつ)をインストールします。
1 2 3 4 5 6 7 8 |
# カレントディレクトリにダウンロード curl -sS https://getcomposer.org/installer | php # どこでも使えるようにbinに移動させる mv composer.phar /usr/local/bin/composer # バージョン確認できればインスト完了! composer -V |
composerを使って、laravelプロジェクトを生成する。
※1 プロジェクト生成先のディレクトリはあらかじめ作成しておく必要がある(そこに移動してからコマンド入力した方が楽)
※2 laravelにはインストールという概念は無く、プロジェクトを作るたびにダウンロードしてくるっぽい。
※3 最後の4.2.*を入力しないと、最新版のlaravel5プロジェクトが作成される
1 2 3 4 5 6 7 8 9 10 |
composer create-project laravel/laravel ./ 4.2.* Installing laravel/laravel (v5.1.1) - Installing laravel/laravel (v5.1.1) Downloading: 100% Created project in ./ Loading composer repositories with package information Installing dependencies (including require-dev) # この後、なんか色々とダウンロードされるので時間がかかる。 |
とりあえず、laravel4の空プロジェクトがこれで生成されたはずなので、ブラウザからアクセスしてみる。
http://test.com/laravel/
403 Forbiddenでアクセスできない…。chmod -R 777とかしてもダメ~。
どうやら、http://test.com/laravel/public が正しいアクセスURLっぽい。
入力するURLが長いので、DocumentRootを書き換える。
1 2 3 4 5 6 7 8 9 10 |
vi /etc/httpd/conf/httpd.conf # apacheの設定ファイル <VirtualHost *:80> ServerName test.com DocumentRoot /home/test/public_html/laravel/public ErrorLog logs/test.com-error_log CustomLog logs/test.com-access_log common </VirtualHost> apachectl graceful # webサーバを再起動。 |
# これでドメイン指定だけでlaravelにアクセス出来るようになった。
http://test.com/
サンプルページが表示されたけど、この後どうすればいいんだろう…。とりあえずマークをクリックしてみたら、単なるlaravel公式ページへのリンクだった…。
気を撮り直して、フレームワークお約束のルーティングでも試してみよう。
ルートにアクセスすると、このファイルでルーティングされるみたいなので、修正してみた。
/laravel/app/routes.php
ルーティングその1、文字列の表示
1 2 3 4 5 6 7 8 9 10 |
<?php //ルートにアクセスされた時の処理を書く。いわゆるクロージャ Route::get('/', function() { // ビューを使わずに文字列を、そのまま表示する // return View::make('hello'); return 'hello'; }); |
ルーティングその2、引数的な感じで、URLから文字列を渡してみよう。
1 2 3 4 5 6 |
//新しいルーティングを追加 Route::get('/user/{name}', function($userName){ return $userName.'さん'; } ); |
http://test.com/user/suzuki でブラウザからアクセスすると、suzukiさんと表示される。
なんか、長くなってきたので、ここで一旦区切ろう。
Sentry(会員管理機能)は、次の投稿で~。