エックスサーバーにSentinel(Native)を導入する

2022年5月11日

エックスサーバーにSSH接続

以下接続設定をしてクライアントソフト(Tera term)などで繋ぐ。

エックスサーバー SSH接続設定 https://www.xserver.ne.jp/manual/man_server_ssh.php
Tera term https://ja.osdn.net/projects/ttssh2/

composerによるインストール

ターミナルで以下実行。

cd {インストール先DIR_(vendorができるところ)}
curl -sS https://getcomposer.org/installer | php
php composer.phar require illuminate/database illuminate/events symfony/http-foundation cartalyst/sentinel "^5.0"

のちにsentinelのバージョンが5.0だとユーザーのdeleteが完了しない(メモリオーバーフロー)となることがわかったため、composer.jsonをいかに修正して、composer updateを実施

{
    "require": {
     "illuminate/database": "^8.62",
     "illuminate/events": "^8.62",
     "symfony/http-foundation": "^5.3",
     "cartalyst/sentinel": "5.1.*"
    }
}

Sentinel用データベース、ユーザー追加(MySQL)

エックスサーバーのマニュアルに従う。

エックスサーバー MySQL設定 https://www.xserver.ne.jp/manual/man_db_setting.php

テーブル作成

.sqlファイルがvendorフォルダの「/vendor/cartalyst/sentinel/schema/mysql-5.6+.sql」にできているので、MySQLのSOURCEコマンドで実行する。

cd {mysql-5.6+.sqlがあるディレクトリ}
mysql -h {MySQLホスト名} -u {作ったMySQLユーザーID} -p

パスワードを聞かれるので作ったMySQLユーザーのパスワードを入力。

use {作ったMySQLデータベース名};
SOURCE mysql-5.6+.sql;

SHOW TABLESしてテーブルができていることを確認。