2020/02/17
今までローカル環境でLaravelを開発していました。
しかし本番ではサーバに開発データをアップして公開することになります。
今回はレンタルサーバでLaravelをインストールしてみます。
レンタルサーバはサクラインターネットを選びました。
やりたいこと
レンタルサーバに Laravel5.2 をインストール
デモサイト(※プロジェクト名を ”practice” にした場合)
前提知識
Poderosa(SSHクライアントソフト)を使ってさくらレンタルサーバにアクセスします。
事前にこの辺りの環境を整えておく必要があります。
SSH上ではLinuxコマンドを使って作業をします。そのため、基本的なLinuxコマンドの知識は必要になります。
インストール時に public というフォルダができますが、さくらレンタルサーバーのpublicルートは /www
です。なので、このフォルダの場所を変更させる作業が必要になります。
この辺りの知識は以前にエントリーしました。事前に復習しておくと混乱しなくて済むかもしれません。
手順
1.サクラインターネットで申し込み
2週間お試しで利用することができます。
月額 515円 / 初期費用 1,029円
2.SSHクライアントでレンタルサーバに接続
SSHクライアントはPoderosa(ポデローザ)を選びました。
Poderosaはなるべく最新のものを使うことをお勧めします。
僕はもともとPoderosaを使っていたのですが、古いバージョン(Ver4.0)だと接続できませんでした。
3.composerのインストール
ログインが成功すればホームディレクトリに行きます。
% pwd
/home/laraweb
この場所にcomposer.pharをダウンロードします。
% curl -sS https://getcomposer.org/installer | php
"ls" コマンドで composer.phar がダウンロードできたことを確認します。
% ls
MailBox composer.phar db sakura_pocket sblo_files user www
"php composer.phar" とコマンドを打って以下のような画面が出たら composer のインストールはOKです。
4.laravelのインストール
ホームディレクトリにいることを確認
% pwd
/home/laraweb
composerを使ってLaravelをインストールします。
オプションでバージョン指定します。
プロジェクト名は "practice"
% composer create-project "laravel/laravel=5.2.*" practice
さくらのレンタルサーバでは上記のコマンドでは上手くいかないときがありました。
その場合は composer
→ php composer.phar
とすると上手くいきました。
上記の場合だと以下のようなコマンドになります。
# プロジェクト名を "practice"
php composer.phar create-project "laravel/laravel=5.2.*" practice
ホームディレクトリにLaravelのプロジェクトが作成されました。
% ls
MailBox composer.phar db sakura_pocket sblo_files practice www
5.Publicのディレクトリを移動する
/home/laraweb/practice/public
の中身のファイルを /home/laraweb/www/
に移動させます。
# wwwディレクトリに practice というディレクトリを作成
% pwd
/home/laraweb/www
% mkdir practice
# practiceプロジェクトのpublicディレクトリをwwwディレクトリに移動
%cd /home/laraweb/practice/public
%mv index.php ../../www/practice/index.php
%mv .htaccess ../../www/practice/.htaccess
%mv webconfig ../../www/practice/webconfig
%mv robots.txt ../../www/practice/robots.txt
%mv favicon.ico ../../www/practice/favicon.ico
publicの位置と名前を変えたので、それに合わせてindex.php内のパスも変更します。
:
// require __DIR__.'/../bootstrap/autoload.php';
require __DIR__.'/../../practice/bootstrap/autoload.php';
:
// $app = require_once __DIR__.'/../bootstrap/start.php';
$app = require_once __DIR__.'/../../practice/bootstrap/start.php';
6.シンボリックリンクの作成
practice/publicディレクトリ
をさくらレンタルサーバーの公開ディレクトリにリンクさせます。
# public → www/practice へリンク
ln -s /home/laraweb/www/practice /home/laraweb/practice/public
7.htaccessの編集
さくらのレンタルサーバでは .htaccess
のOptionsが許可されていません。
Laravelデフォルトの .htaccess の Options -MultiViews をコメントアウトします。
% cat /home/laraweb/www/user/.htaccess
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
# Options -MultiViews
</IfModule>
: 省略
2017年の3月中旬以降、さくらレンタルサーバーにてApacheのシステム設定変更がありました。.htaccess 内で、条件付きではありますが Options の指定が可能になっています。
8.動作確認
http://{さくらのアカウント名}.sakura.ne.jp/{プロジェクト名} を実行すれば Laravel の初期画面が確認できます。
デモサイト(※プロジェクト名を ”practice” にした場合)
以上です。
さくらのレンタルサーバ スタンダード
当サイトで実演 & 解説している Laravel のプログラムは「さくらのレンタルサーバー」の「スタンダード」プランの環境を前提にして解説しています。非常にコスパがよく利用者からも評価が高いサーバーです。もし、当サイトで解説している Laravel のチュートリアルを同じ環境で試して動かしてみたい方はおススメのサーバーです。
仕事で Laravel を使っています。気づいたことや新しい発見など情報を発信していきます。問い合わせはこちら。