コアサーバーにlaravelを入れる(デプロイ)方法

製作 プログラム

最終更新日:2019/02/23

ラムネグから一言:無料アプリを3つ作りました。記事下部にリンクがあるので見てみてくださいね。さっそくみてみる

コアサーバーにlaravelを入れる

laravelってプロジェクトの作り方とかは公式マニュアルにもちゃんと載ってるのに、いざ本番サーバーに移動させようとするといきなり説明がなくなって困っちゃいますよね。

という事で、ここではコアサーバーにローカルで作ったlaravelプロジェクトを入れる方法を簡単に紹介します。

なんでそのコマンドが必要なの?とかなんでこんなのインストールしないといけないの?などなど、考え方ややってることの細かな説明は別途違う記事でしようと思っています。

  1. コアサーバーにlaravelを入れる
  2. 1.まずはssh接続
  3. 2.注意点
  4. 3.composerのインストール
  5. 4.git clone
  6. 5.composer installの実行
  7. 6.「.env」をアップロード
  8. 7.migrateの実行
  9. 8.API KEY作成
  10. 9.エイリアスを切る
  11. 接続チェック
  12. まとめ
  13. おまけ

1.まずはssh接続

まずはssh(自分のパソコンからコアサーバーを操作できる)でコアサーバーに接続していきます。まずはコアサーバーの管理画面で「SSH接続IP許可」をクリック。5分くらい待つように言われるので待つ。その後、ウィンドウズの場合だと「cmd」で、


ssh -l コアサーバーのユーザー名 コアサーバーのドメイン名

で、その後コアサーバーの管理画面にあるftpのパスワードを入力するとログインできます。

2.注意点

コアサーバーではコマンドラインで「php」と普通にたたくとcgi版の方が動く。でもcgi版ではできる事が少ない(コマンドオプションが少ない)ようなので明示的に「/usr/local/bin/php71cli」としてcli版phpを叩く。

下みたいな感じ。


/usr/local/bin/php71cli -v

3.composerのインストール

レンタルサーバーにインストールって聞くと他の人に影響しないかドキドキしちゃいますが、インストールと言ってもただフォルダができるだけなので大丈夫(なはず)。

やり方はcomposerの公式サイト「getting started」のやり方で。

途中crcチェック(ファイルに欠損がないかのチェック)みたいなことをしている(長ったらしい数字が並んでるとこ)ので、必ずcomposerの公式サイトのコマンドをコピペして実行してくださいね。

ちなみに公式サイトでは「php」と書いていますが、「/usr/local/bin/php71cli」とか「/usr/local/bin/php72cli」にするのでしたね。

4.git clone

githubとかbitbucketなどに入れてある自分のlaravelプロジェクトをまるまるクローン。

5.composer installの実行

「composer install」はcomposerをインストールするコマンドじゃないです(もうすでに③の手順でcomposerのインストールは済んでるのでした)。laravelプロジェクトにvendorフォルダを作成するためのコマンドです。今は「フーン。あっそ」で進んでください。

ssh上でlaravelプロジェクトに移動して、


 /usr/local/bin/php71cli ../composer.phar install

composer.pharは手順3でインストールしたcomposerです。場所は各自、自分の環境に合わせてくださいね。

6.「.env」をアップロード

「.env」にデータベース名などローカルとは違ってくる部分を編集してからコアサーバーにアップロードします。

これはブラウザ上からやっちゃいましょう。

7.migrateの実行

laravelプロジェクトがデータベースを使うものだったのなら、migrateを行ってテーブルを作成します。

コアサーバーの管理パネルで空のデータベースを作成した後、下記コマンドをssh上で実行。


 /usr/local/bin/php71cli artisan migrate

8.API KEY作成

しなくてもいいのかもしれませんが、API KEYを新しく作り直します。API KEYというのはログイン処理の時とかに使ってるものでバレたらダメなやつらしいので作り直してます。


 /usr/local/bin/php71cli artisan key:generate

9.エイリアスを切る

さあラストです!

コアサーバーではpublic_html内の各ドメイン名のフォルダがブラウザで表示されるので、まずはpublic_htmlに自動で作成されるドメイン名のフォルダを削除します。


cd public_html
rm -d ドメイン名

そのあと、消したフォルダ名と同じ名前でシンボリックリンクを張ります。

こうするとブラウザ上からlaravelが表示されるようになります。


 ln -s /virtual/ユーザー名/laravelプロジェクト名/public/ ドメイン名

※このときlaravelプロジェクトの方は「public」を指定すること。さらに絶対パス「virtualから」で指定すること。

接続チェック

これで後はURLに接続すると…自分の作ったlaravelプロジェクトがちゃんと表示されるはずです。

他のレンタルサーバーとの違いでいうと、phpを明示的に呼ぶところと、シンボリックリンクの張り方くらいだと思います。

まとめ

laravelは開発の手引きはとても手厚いのですが実際に本番環境に移すときが一番しんどい気がします。

このやり方でコアサーバーに移行できますし、ほかのレンタルサーバーでもほとんどやり方は同じだと思います。参考にしてみてくださいね。

おまけ

doctrine/dbalを入れる

/usr/local/bin/php71cli ../../composer.phar require doctrine/dbal
intervention/imageを入れる

/usr/local/bin/php71cli ../../composer.phar require intervention/image

いずれにしても普通に「composer require 〇〇」じゃダメ

【どどん!】ラムネグではただいまアプリを絶賛提供中!さあ、選べる3つの無料アプリ!あなたはどれにする?

【わたガチャ】

あなただけのガチャを作ろう♪

すたーと!

【みんガチャ】

みんなで一つのガチャを作りあげよう♪

すたーと!

【litty-リティ】

秘密のメッセージをフォロワーさんに送っちゃおう!

すたーと!