Laravelその他技術系
更新日 : 2023年12月11日
投稿日 : 2020年4月27日

Laravelで開発したシステムをGitHubを使ってさくらのレンタルサーバーで公開する手順

Laravelで開発したシステムをGitHubを使ってさくらのレンタルサーバーで公開する手順の画像

こんにちわ、PHPエンジニアのエンジニア婦人(@naho_osada)です。
私はPHPエンジニアとして8年~の経験があります。

先日、Laravelで開発した「WebHome」と「みんなのきょうのごはん」をリリースしました。
自分だけでフレームワークを使ったシステムを公開するのは初めてだったため、色々調べてのリリースとなりました。

今回は「LaravelをGitHubを使用してさくらのレンタルサーバーで公開する」手順を書いていきます。

使用するツール

  • GitHub
  • Terminal
  • さくらのコントロールパネル

※ここではデータベースを使用するシステムを使っていないため、データベースの公開手順は含みません。

GitHubにLaravelソースをpushする

初めからGitHubを使って開発し、masterブランチに全データあるよ!という方は問題ありません。

これがない場合、まずはGitHubにソースを登録しておきます。

参考

GitHubそのものの登録方法やソースの登録方法、その他使い方は検索するとたくさん出てきます。

など。

さくらのサーバーにSSH接続する

Tera Term等を使って、さくらのサーバーにログインします。好きなものでいいと思います。

TeraTermの接続初期画面

SSHで接続します(パスワードはFTP接続のパスワードです。)

初期は自分の初期場所にいると思いますが、(/home/アカウント名)念のため現在地を確認します。

pwd

「/home/アカウント名」になっていない場合は移動します。
移動したらgit cloneコマンドを実行します。

べたPHPの時は公開領域(さくらの場合はwwwの中)に設置しますが、フレームワークの場合はwwwの中にすべてを設置しません。

git clone https://GitHubアカウントの指定URL

GitHubアカウントのURLは公開したいソースの「Clone or Download」をクリックすると該当のURL(またはSSH)があります。

GitHubのソース取得URLの場所

フォルダ名はGitHubに登録しているリポジトリ名称になります。公開時に不都合があれば名称を変更しておきます。

vendorディレクトリを構築する

LaravelではvendorソースはGit管理外にすることが通常です。理由は重たいから。

そのため、公開サーバーにGitHubから入れた後、vendorディレクトリを構築します。

レンタルサーバーにComposerをインストールする

Composerを使っていれていきます。
プロジェクトディレクトリへ移動。
その後、composerインストールを実行します。

cd Laravelのプロジェクトディレクトリ
curl -sS https://getcomposer.org/installer | php
php composer.phar
php composer.phar install

これでvendorディレクトリが入ります。

.envファイルを生成する

重要な設定が含まれる.envファイルはGit管理をしません(している方は即刻削除してください。危険)。

そのため、.envファイルを手動で生成します。

開発で使用していたデータを、公開用に設定し直してアップロードです。

Terminal開いているので、vimで作ってもいいですね。場所は開発と同じ、Laravelディレクトリの直下です。

公開領域にpublicフォルダの中身を移動する

公開領域に必要なファイルを移動します。
Laravelのpublicディレクトリの中身を、公開領域に移動します。

URLが
https://xxxx.xxx/Laravelディレクトリ名/
になります。
URL直下に公開したい場合はディレクトリ名は不要です。または.htaccessを修正かな。

cd /home/アカウント名/www ※さくらの場合
mkdir 公開ディレクトリ名
cp -r /home/アカウント名/Laravelプロジェクト名/public/*/. /home/アカウント名/www/公開ディレクトリ名

隠しファイルのコピーを忘れずに!(.htaccessがコピーできていなくてはまった人)

index.phpのパスを修正

コピーしたindex.phpのパスを修正します。

require __DIR__.'/../vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';

このままだと、ファイルがなくてrequireできません。エラーになります。
これを「/home/アカウント名/Laravelプロジェクト名」の場所になるように修正します。

cd /home/アカウント名/www/公開ディレクトリ名 ※さくらの場合
vim index.php

「I」キーを押して追加編集モード

require __DIR__.'/../../Laravelプロジェクト名/vendor/autoload.php';
$app = require_once __DIR__.'/../../Laravelプロジェクト名/bootstrap/app.php';

「ESC」キーを押して編集を終了して、

:wq

再度vimで開いて、修正した通りになっていればOKです。

アクセスしてみる

正常に表示されれば完了です!

Laravelで公開できた(WebHome)

まとめ

  1. ソースをGitHubにあげておく
  2. 公開サーバーのhome(公開領域外)にgit cloneする
  3. composerを入れてvendorを再構築する
  4. .envを作る
  5. (データベースがある場合はテーブルの作成など)
  6. publicディレクトリを公開領域のディレクトリへ移動、隠しファイルを忘れずに(/www/URLにしたいディレクトリ名称/)
  7. index.phpのパスを修正

参考

Laravelをさくらインターネットのレンタルサーバにデプロイ・アップロードする方法をまとめてみた

以上です。
参考になれば幸いです(‘ω’)ノ

フリーランスの案件探しはエミリーエンジニア※広告

毎日仕事をしながらも次の案件を気にしなければならない…フリーランスの宿命です。

そんな大変な案件探しは【エミリーエンジニア】のエージェントに助けてもらってはいかがでしょうか。

▼ 登録はここから ▼

【エミリーエンジニア】

  • 月額60~80万円の高額案件中心
  • 15年以上の信頼と実績があるから、プライム案件を受注できる
  • フルリモート案件が90%以上
です。

専属のキャリアアドバイザリーコンサルタントに色々と相談もできますよ。

エンジニアの転職はキャリアネクスト※広告

今の職場で頑張っても収入アップは見込めない…

エンジニア転職の【キャリアネクスト】で転職で収入アップを目指してみてはいかがでしょう?

▼ 登録はここから ▼

【キャリアネクスト】なら

  • エンジニアのキャリア支援を始めて10年以上!
  • 大手からベンチャー、スタートアップまで幅広い
  • 理想のキャリアプランから最適と考える企業様だけをご紹介
  • 応募書類の添削や企業との連絡代行などのフォローあり
  • 不安なことは専任のアドバイザーにすぐ相談
など、仕事をしながら転職活動する上で大変なことをかなりお任せできちゃいます!

PR

※本サイトはアフィリエイトプログラムを利用して商品を紹介しています。