注意
これは私の環境下における私の備忘録です。お使いの環境によっては内容が異なる場合があります。私は何も責任を負いませんのでご了承のうえご覧ください。
内容
Laravel設定編1/2というお題にしてありますが、前回のフラットなPHP編でWindowsPCにXAMPPとODBC環境を構築したところから始めます。ODBCやXAMPPの設定がお済みでない場合は、さきにフラットなPHP編をご覧になってください。ドキュメントルートにフラットなPHP編で作成したファイルがあれば削除しておいた方がいいです。
Laravelとは
ララベルと言います。PHPフレームワークの1つです。他にはCakePHPやSymfonyやZendframeworkなどがあります。今はLaravelとCakePHPが2強のようです。CakePHPは歴史があり、Laravelは新参者ですが、Laravelは近年急速に伸びてきているらしいです。
フレームワークはRuby on Railsというのが、大人気のフレームワークですが、それはRubyという言語なので今回は選べません。
フレームワークとは
前記事のようにPHPコードを自力で書いていくと解りますが超大変です。データベースアクセス、ルーティングやページ間の変数の受け渡しや、セキュリティやログイン認証、アプリ全体の設計などなど。自分でしこしこ作り上げるのは可能ですが、そうしたその挙句、他人が見たら何が書いてあるか解らない、自分でも解らないコードになるものです。
要するに全部自分で作ろうとするのがそもそも間違いなのです。フレームワークはウェブアプリケーションを作る上での土台を提供してくれます。
Composerをインストールする
LaravelをインストールするにはComposer(コンポーザー)というソフトをWindowsにインストールする必要があります。
Composerとは、PHPの依存関係管理ツールだそうで、cakePHPやLaravelなどを入れる際には、このComposerを経由して入れるのが普通らしい。
にアクセスすると変な指揮者のサイトが出てくる。
そこからDownloadのリンクをクリックすると、遷移したページにComposer-Setup.exeというリンクがあるので、クリックするとインストーラがダウンロードされる。
それをダブルクリックしてインストールを始める。
基本次へ次へで進めばいいが、途中でどのPHPを使うのかを選ぶ画面がでてくる。XAMPPを入れていればC:\xampp\php\php.exeを選択できるはずなので、それを選択する。
どのPHPを使うという意味を説明すると、XAMPPのPはPHPのPなので、XAMP本体にはPHP本体が組み込まれている。だがPHPは別にXAMPPが無くても別途でWindows本体にインストールできるので、パソコンの中に複数共存できるということになる。だからどのPHPを使うのかを聞かれているということ。
(プロキシとか使ってない普通の環境なら)次へ次へで進んでいいみたい。
Finish(完了)がでたらインストール完了。だけど念のためちゃんと入ったかどうか確認しておく。
コマンドプロントを開き、
C:\Users\ユーザ名> composer -V
をして、バージョンが表示されればOK。-Vは大文字です。-vではない。
もし表示されない場合は、コマンドプロンプトをいったん閉じて開きなおしてみてください。
Laravelをインストールする
インストールするといっても、Windowsに組み込むわけではない。Composerを使ってLaravelのファイル一式をダウンロードするという意味だ。
まずコマンドプロンプトを開いて、
C:\Users\User> cd c:\xampp\htdocs
と入力し、ドキュメントルートに移動する。
次に、
composer create-project laravel/laravel --prefer-dist プロジェクト名
と入力しLaravelをダウンロードする。プロジェクト名は任意ですが今回はcmsにしておきます。
時間は数分かかりますが、無事終わったら最後にset successfullyの文字が表示されるはずです。
htdocsフォルダの中を見ると、cmsフォルダ(今後この名前で説明していきます)ができているはずです。
変化はこのフォルダやその直下にファイル群が作られただけなので、インストールと言えるのかどうか。
まぁxamppフォルダの中にLaravelのファイル一式を入れたので、XAMPPに組みこんだとでも表現しておくのがいいかも。
ドキュメントルートを変更する。(httpd.confの修正)
今回インストールしたLaravelフォルダの構成は、C:\xampp\htdocs\cms\Laravelファイル群
でも前回のフラットなPHP編のとおりでいくと、ドキュメントルートはC:\xampp\htdocsになっているはず。
このままではドキュメントルートの中にcmsフォルダがぽつんとあるだけで、閲覧できるファイルがなく、自身のIPアドレスにアクセスしても怒られてしまう。
なのでドキュメントルートは、C:\xampp\htdocs\cms\publicにしておくこと。
なんでpublicかというと、それがLaravelの掟だから。
cmsフォルダの中にあるpublicフォルダの中にindexファイルがあり、Laravelはそこを起点に展開する仕組みになっている。
変更の方法はXAMPPのコントロールパネルにあるApacheのConfigからhttpd.confを選択して修正する。
アクセス権を変更する(httpd.confの修正)
あとは、.htaccessが効くように、
<Directory />
AllowOverride none
Require all denied
</Directory>
になっているのを、
<Directory />
AllowOverride All
Require all granted
</Directory>
にする。説明は割愛しますが、簡単に言うとセキュリティ的に甘い設定です。ローカルで使うからこれで大丈夫だと思いますが、私は厳密に制限しています。
<Directory />
AllowOverride All
Require ip 自分のIPアドレス
</Directory>
Require ip 192.168.0.25などとIPアドレスを指定しておけば、自分のIPアドレスからしかアクセスできなくなるので安全です。
画面を確認する
自身のIPアドレスにアクセスして、下記の画面が表示されればOK。
続きは次回にします。というか、こんな説明要りませんでしたね。細かく親切に書いているわけでもなく、めちゃくちゃ大雑把でもなく、中途半端な説明。
次回はLaravelでAS400にアクセスすることに特化します。何かあればコメントをお願いします。
コメント
とてもわかりやすい説明でした!
ありがとうございます。
composer create-project laravel/laravel –prefer-dist プロジェクト名
ではエラーが出てしまったので
composer create-project laravel/laravel –prefer-dist プロジェクト名
preferのハイフンを2つにして実行しました。
ハイフン2個つなげて書いたら別の記号になってしまいました笑
ふぅたこ様
コメントありがとうございます。
あれ?間違ってましたか?
–prefer-distのはずですし、記事にもそう書いてある気がします。
文字化けでしょうか。
ふぅたこ様
すみません!わかりました。
確かにハイフンがつながって見えます。フォントの関係のようです。
教えて頂きありがとうございました。直します。