Quantcast
Channel: Bashタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 2817

初心者おばちゃんの簡単にLaravelをレンタルサーバへアップする方法

$
0
0

Symbolic linkをつかってレンタルサーバのディレクトリ変更を最小限でおさえてアップロードする。

Nov 6, 2018にアップしたこちらの動画をありがたいことに、いまだに見てくださっておられる方々がいてまして、文面にあげておこうかと思いました。とても勇気がわきます、ありがとうございます。:relaxed:
Laravelを簡単にレンタルサーバにアップする方法

Hard link との違い

Hard link は、Hard link を削除することで参照先ファイル・ディレクトリが削除される。
Symbolic link は、Symbolic link を通じての参照先ファイル・ディレクトリの削除はできない。

こちら@att55さま、『貼ろうよ Symbolic link』を参照させて頂いております。

とういうことなので、Symbolic Linkを使用しております。

使用環境

ハード

GoDaddy(cPanel)
Windows
PuTTy
Dosコマンド

ソフト

Bush
PSCP

目的

レンタルサーバとLaravelのバージョンが違っていたり、ローカル側の環境をレンタルサーバ側にスタティックに合わせてからアップしなくてもよいように、最初のコミットだけで次回から一連の決まった方法でレンタルサーバに更新できるようにしたい。

方法

何もやっていないレンタルサーバで一からLaravel環境を整備

Laravelの準備

ls /***ディレクトリの中身を確認***/
wget https://getcomposer.org/installer /***Composerをダウンロード***/
ls /***「installer」ファイルがあることを確認***/
php installer --check /***Laravelのバージョンチェック←CorrectとでればOK***/
php installer /***composer.phar*と.composer/ができる***/
rm -f installer /***いらなくなったインストーラーを削除***/

テスト用にプロジェクトをつくる

php composer.phar create-project laravel/laravel laraelTestRun 

SymlinkをはってディフォルトのPublicをLaravelに変更
(symlinkをはってLaravelのpublicを、あたかもレンタルサーバディフォルトのpublic_htmlであるかのように見せる。)

mv public_html public_htmlBK /***名前変更してWWW直下のパブリックを無効にする。***/
ln -s laravelTestRun/public public_html 
ls /***public_html@という新しいディレクトリができていることを確認***/

ブラウザから確認できればOK

ローカルからLaravelプロジェクトをアップロードする

  • 普通に圧縮したファイルをレンタルサーバのコンソール画面からアップロードします。
  • コンソール画面からZIPファイルを解凍します。(結局この方法が一番早くローカルのLaravelを移せました)
  • 先にテストしたLaravelプロジェクトのSymlinkをunlinkします。
unlink public_html

もし同じプロジェクトであった場合には、以下のように解凍する前に古い方を再帰的に削除してください。

rm -rf laravelTestRun
  • もう一度、アップロードしたプロジェクトのために、SymlinkをはってディフォルトのPublicに変更

アップロード後の作業

Dosから、PSCPをつかって環境ファイルやイメージファイルをアップロードします。

環境ファイル

C:\User\neko>pscp c:\savefiles\.env neko@ssh.laravelTestRun.com:/home/neko/laravelTestRun/

イメージファイル(ブログで/storage/app/public/に入るようにしてます)

C:\Users\neko>pscp -r c:/storage/app/public/ neko@ssh.laravelTestRun.com:/home/neko/laravelTestRun/storage/app/public/
  • プロジェクトの中のstorageを削除してartisanでsymlinkをつくる(アップロードするたびに必要)
cd laravelTestRun/public
rm -r storage
cd laravelTestRun
php artisan storage:link

*注:/home/neko/laravelTestRun/storage/app/public/の階層にあるstorageのイメージファイルを、artisanでlaravelTestRun/publicの階層へSymlinkをはってやるため、最初からあったlaravelTestRun/public/storageを削除しています。なのでディレクトリに気を付けてください。

以上です。

動画はこちらです。
Untitled.png

ありがとうございました。

beerneko テック動画集はこちらです。


Viewing all articles
Browse latest Browse all 2817

Trending Articles