はじめに
cPanel、Hostinger、または独自 VPS に FleetHub を 10 分以内でインストール。
ユーザーと役割
Spatie 権限付き 5 つのフリート役割 — admin、fleet manager、department head、accountant、driver。
製品機能
車両、ドライバー、申請、引き渡し、燃料ログ、TCO、コンプライアンス、フリートヘルススコアなど。
カスタマイズ
車両カテゴリ別カスタムフィールド、ブランディング、言語、テーマ。
Hostinger セットアップ
最安 Single 共有ホスティングへのステップバイステップデプロイ。
cPanel セットアップ
標準 cPanel 共有ホスティングでのステップバイステップデプロイ — ターミナル不要。
セキュリティと QR
HTTPS、HMAC 署名 Webhook、監査ログ、カメラ経由の QR クイックスキャン。
レポートとエクスポート
7 種類のフリートレポート(Excel + PDF エクスポート、日付フィルタ付き)。
メールアラート
コンプライアンス、メンテナンス、申請期限超過、運転免許のリマインダー。
よくある質問
FleetHub を最も安価な Hostinger Single プランで実行できますか?
はい — FleetHub は以下と完全に互換性があります Hostinger シングル (~$2.99/月)。シングルには、PHP 8.3、MySQL、ネイティブ Cron ジョブ、無料 SSL など、FleetHub に必要なものがすべて含まれています。 SSH、Composer、コマンドラインは必要ありません。を参照してください。 ホスティンガーのセットアップ ステップバイステップガイドのセクションを参照してください。
設置するには技術的なスキルが必要ですか?
いいえ、 Webベースのインストーラー 要件のチェック、データベースのセットアップ、移行、管理者アカウントの作成など、すべてを処理します。ファイルをアップロードするだけです。 /インストール ブラウザで をクリックし、ウィザードに従います。
スケジュールされた電子メール (コンプライアンス/メンテナンス アラート) はどのように機能しますか?
FleetHub は Laravel のスケジューラを使用します。あなたは設定するだけです 1 つの cron ジョブ これは毎分実行され、Laravel は各タスクを正しい時刻 (毎日 08:00、毎月など) に内部的にディスパッチします。 cPanel の場合は、次のように設定します。 上級 → Cron ジョブ。ホスティンガーの場合は、次を使用します。 hPanel → 詳細 → Cron ジョブ。見る cPanelのセットアップ → ステップ7 または ホスティンガーのセットアップ → ステップ 5。ホストに cron がない場合は、無料のアプリ内 Cron URL を使用します。 cron-job.org サービス。
どのような減価償却方法がサポートされていますか?
3 つの方法: 直線、 定率法、 そして 生産単位 (走行距離計のキロ数に基づく)。車両の価値は TCO ダッシュボードに入力され、毎月自動更新されます。
QR スキャナーは携帯電話でも機能しますか?
はい - ドライバーと管理者は、ブラウザ カメラで車両の QR コードをスキャンできます。 html5-qrコード。クイック スキャン アクション (燃料ログ、走行距離計、インシデント レポート) にはログインが必要です。唯一の要件は、 HTTPS。
コーディングせずに独自のフィールドを追加できますか?
はい。 管理者 → カスタムフィールド 無制限の属性 (テキスト、数値、日付、選択、テキストエリア、ファイル、チェックボックス) を追加し、それらを車両カテゴリにスコープし、必須としてマークし、ドラッグ アンド ドロップで並べ替えることができます。
FleetHub は何言語をサポートしていますか?
すぐに使用できる 11 のロケール: 英語、ベトナム語、スペイン語、フランス語、ドイツ語、中国語、日本語、ポルトガル語 (BR)、ロシア語、アラビア語 (完全な RTL サポート)、ヒンディー語。管理者は翻訳を管理します 管理 → 翻訳。
FleetHub を cPanel 共有ホスティングにインストールできますか?
はい - FleetHub はあらゆる標準で動作します cPanel 共有ホスティング PHP 8.2 以降、MySQL、および Cron ジョブを使用して計画します。サーバー上に Composer や Node.js は必要ありません。パッケージはビルド済みで出荷されます。を参照してください。 cPanelのセットアップ セクション。
FleetHub のブランド (ログイン ページ、ページ タイトル、色) を変更するにはどうすればよいですか?
FleetHub は管理画面から完全にリブランドできます — コード編集や npm run build は不要です。ログインロゴ、フッター、バッジ、ブラウザのタブタイトルは Settings → Branding → App Name に従います。Appearance タブでライト/ダークモードの色をカスタマイズできます。
auth.login_subtitle を編集 → Settings → Appearance で色をカスタマイズ。
クイックリファレンス:
| 項目 | 例 | 変更方法 |
|---|---|---|
| ロゴと名称 | ABC フリート | Settings → Branding → App Name |
| ログインサブタイトル | FleetHub にアクセスするには認証情報を入力 | Administration → Translations → auth.login_subtitle |
| ブラウザタブタイトル | アプリ名 | Settings → Branding → App Name |
| アプリの色 | カスタムパレット | Settings → Appearance |
1. ロゴと名称: 管理者でサインイン → Settings → Branding → App Name を更新(必要ならロゴをアップロード)→ Save。
2. ログインサブタイトル: Administration → Translations で auth.login_subtitle を編集、または lang/{locale}/auth.php を直接編集。
3. アプリの色: Settings → Appearance — ライト/ダークそれぞれの色を設定。Save appearance で全体に適用。
概要
FleetHub は社内車両(50~200 台)向けのエンタープライズ車両資産管理システムです。Laravel 11、Vue 3、Tailwind CSS で構築 — 車両、ドライバー、車両申請、損傷マッピング付き引き渡し、燃料ログ、経費、TCO 分析、コンプライアンス追跡、フリートヘルススコアをカバーします。タクシーやレンタカー事業向けではありません。
QR クイックスキャン
車両 QR をスキャンして燃料記録、オドメーター更新、インシデント報告 — ドライバー向けモバイルファースト。
TCO ダッシュボード
車両別・フリート全体の総所有コスト — 購入、燃料、メンテナンス、保険など。
車両引き渡し
出庫/入庫引き渡し(2D 損傷マッパー、チェックリスト、写真、署名、PDF レポート付き)。
フリートヘルススコア
日次スコアと内訳 — 期限超過メンテナンス、期限間近コンプライアンス、燃料異常。
コンプライアンス追跡
保険、車検、道路税、許可証、運転免許 — 30/14/7/1 日前のアラート。
フリートレポート
7 種類の組み込みレポート(チャート、Excel/PDF エクスポート)。
サーバー要件
- PHP 8.2 以降 (8.3 推奨)
- MySQL 5.7 以降または MariaDB 10.3 以降
- Composer 2.x (for local development only — not required on shared hosting)
- Node.js 18 以降および npm 9 以降 (ローカル フロントエンド ビルドのみ)
- Webサーバー: ApacheまたはNginx
必要な PHP 拡張機能
- OpenSSL, PDO, PDO_MySQL, Mbstring, Tokenizer, XML, Ctype, JSON, GD, Fileinfo
ディスク容量
最小 ~ 200 MB。車両の写真、燃料の領収書、引き渡し画像、コンプライアンス文書用の余分なスペースを確保してください。
インストール
オプション A — Web インストーラー (推奨)
- プロジェクト ファイルを Web サーバーにアップロードします。
- ドメインドキュメントルートを指定します
公共/。 - 権限を設定します。
ストレージ/そしてブートストラップ/キャッシュ/書き込み可能である必要があります (chmod 775)。 - コピー
.env.exampleに.envそしてセットAPP_KEY(走るphp 職人キー:生成SSH/ターミナルを使用している場合、または次を参照してください。 cPanelのセットアップ → ステップ5)。 - 訪問
https://yourdomain.com/installブラウザで。 - ウィザードに従って、「要件」→「データベース」→「移行」→「管理者アカウント」→「完了」を選択します。チェック デモデータを含める デモアカウントを使用してサンプルフリートをロードするには(「 ユーザーと役割)。
オプション B — CLI インストール
# 1. 依存関係をインストールする
composer install --no-dev --optimize-autoloader
npm install
npm run build
# 2. 環境の設定
cp .env.example .env
php artisan key:generate
# 3. .env を編集して DB 認証情報を設定します
# DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD
# 4. データベーステーブルを作成し、初期データをシードする
php artisan migrate --seed
# 5. アップロード用のストレージのシンボリックリンクを作成する
php artisan storage:link
# 6. 実稼働用のキャッシュ構成
php artisan config:cache
php artisan route:cache
php artisan view:cache
# 7. インストール済みとしてマークします
echo "Installed" > storage/installed.lock
公共/ ディレクトリ。 Apache の場合、含まれる .htaccess URL の書き換えを処理します。 Nginx については、 Laravel デプロイメントガイド。
ウィザードのステップ 2 — データベースの構成
ウィザードがステップ 2 に到達したら、ホスティング パネルで作成したデータベースの MySQL 接続の詳細を入力します。
| 分野 | デフォルト / 例 | 注意事項 |
|---|---|---|
| Host | 127.0.0.1 | 99% の共有ホストで動作します。ホスティングがカスタム MySQL ホスト名を提供しない限り、このデフォルトのままにしてください。 |
| Port | 3306 | 標準の MySQL ポート。プロバイダーが標準以外のポートを使用している場合にのみ変更してください。 |
| データベース名 | uXXXXXX_fleethub | ホスティング パネルに表示されるフルネーム (プレフィックスを含む)。 |
| ユーザー名 | uXXXXXX_fleethub | 上記のデータベースに対する権限を持つ MySQL ユーザー。 使用しないでください 根 共有ホスティングについて。 |
| パスワード | (DBパスワード) | MySQL ユーザーの作成時に設定したパスワード。 |
ホストパネルごとにこれらの認証情報を見つける場所
- Hostinger: hPanel → データベース → 管理 → データベースをクリックします。
- cPanel: cPanel → MySQL データベース。データベースのリストには名前が表示されます。ユーザーは以下にリストされています。
- Plesk: 「Plesk」→「データベース」→データベース名をクリックします。
- DirectAdmin: DirectAdmin → MySQL Management → データベースをクリックします。
- 外部/マネージドDB: AWS RDS、DigitalOcean マネージド データベースなど。クラウド コンソールから認証情報を使用します。
よくあるエラーとその修正方法
| エラーメッセージ | 原因と修正 |
|---|---|
SQLSTATE[HY000] [1045] Access denied | ユーザー名またはパスワードが間違っているか、ユーザーがこのデータベースにアクセスできません。 |
SQLSTATE[HY000] [1049] Unknown database | データベース名が間違っているか、データベースをまだ作成していません。 |
SQLSTATE[HY000] [2002] Connection refused | MySQL サーバーにアクセスできません。試す ローカルホスト の代わりに 127.0.0.1 またはその逆。 |
SQLSTATE[42S02] Base table not found: sessions | セット SESSION_DRIVER=ファイル そして CACHE_STORE=ファイル で .env 移住前。 |
could not find driver | PHP pdo_mysql 拡張子がありません。ホスティング パネルで有効にします。 |
127.0.0.1 そして 3306 — 共有ホスティングではそのままにしておきます。
Localhost (ローカル開発)
運用環境に展開する前に、テストまたは開発のためにコンピューター上で FleetHub を実行するためのクイック ガイド。オペレーティング システムに一致する環境を選択してください。
オプション 1 — Laravel Herd (推奨、macOS および Windows)
ララベルの群れ Laravel チームによる公式のローカル環境です。無料、ネイティブ、Docker なしです。 PHP 8.2/8.3/8.4、Nginx、および (Herd Pro の) MySQL/Redis をバンドルします。
- ダウンロードしてインストールする ララベルの群れ から herd.laravel.com。
- FleetHub プロジェクト フォルダーをその中に置きます
~/群れ/(macOS) または%USERPROFILE%\群れ\(Windows)。 Herd は、。テストドメイン — 例:http://fleethub.test。 - 開ける 群れ → サイト PHP のバージョンが次であることを確認します。 8.2または8.3。サイトを右クリック → 安全な HTTPS を有効にします (QR スキャナーに必要)。
- MySQL データベースを作成します。と ハードプロ、 使用 サービス → MySQL → TablePlus で開く。それ以外の場合はインストールします MySQL コミュニティ または SQLite (
DB_CONNECTION=sqlite、touch データベース/database.sqlite)。 - コピー
.env.exampleに.env、DB認証情報を入力して実行します。php 職人キー:生成プロジェクトのルートから。 - 開ける
http://fleethub.test/installブラウザで をクリックし、インストーラー ウィザードに従います。
オプション 2 — XAMPP (Windows、macOS、Linux)
XAMPP Apache、MySQL/MariaDB、および PHP をバンドルします。無料かつクロスプラットフォーム。必ずバージョンを選択してください PHP 8.2以降。
- ダウンロード XAMPP 8.2+ から apachefriends.org そしてそれをインストールします。
- FleetHub プロジェクトをにコピーします
C:\xampp\htdocs\FleetHub\(Windows) または/アプリケーション/XAMPP/htdocs/FleetHub/(macOS)。 - 開ける XAMPP コントロール パネル そして始めます アパッチ そして MySQL。ポートがビジーな場合は、次を使用します。 設定→service.conf Apache を 8080 に切り替えます。
- に行く
http://localhost/phpmyadmin→ 新しい → という名前のデータベースを作成します。フリートハブutf8mb4照合を使用します。 - プロジェクトフォルダー内:コピー
.env.exampleに.env、 セットDB_DATABASE=フリースハブ、DB_USERNAME=ルート、 離れるDB_パスワード空 (XAMPP のデフォルト)。走るphp 職人キー:生成。 - 訪問
http://localhost/FleetHub/public/installをクリックしてインストーラー ウィザードを実行します。
/公共/: に仮想ホストを作成します C:\xampp\apache\conf\extra\httpd-vhosts.conf ポインティング ドキュメントルート プロジェクトの 公共/ フォルダーを選択し、追加します 127.0.0.1 フリーハブ.ローカル ホストファイルに。
オプション 3 — ララゴン (Windows)
ララゴン は、Laravel 用に設計されたポータブル Windows スタックです。自動仮想ホスト、きれいな URL、MySQL/MariaDB、およびバンドルされた HeidiSQL です。
- ダウンロード ララゴンフル から ララゴン.org そしてそれをインストールします。
- ララゴンでは: メニュー → PHP → バージョン — に切り替えます PHP 8.2 または 8.3。
- FleetHub プロジェクトをにコピーします
C:\laragon\www\FleetHub\。 - クリック すべて開始。 Laragon は vhost を自動作成します。
http://fleethub.test(を指して、公共/フォルダ)。 - 開ける ハイジSQL (バンドル) → データベースを作成する
フリートハブ。デフォルトの認証情報: ユーザー根、パスワードが空です。 - 編集
.envDB 認証情報を使用して実行します。php 職人キー:生成を訪問してください。http://fleethub.test/install。
オプション 4 — 組み込み PHP サーバー (Web サーバーは必要ありません)
最も単純なオプション: Laravel には同梱されています。 職人が奉仕する、開発用 PHP サーバーが起動します。 Apache や Nginx は必要ありません。簡単なテストに最適です。
# 依存関係をインストールして構成する
cd /path/to/FleetHub
composer install
cp .env.example .env
php artisan key:generate
# 移行を実行し、初期データをシードする
php artisan migrate --seed
# 開発サーバーを起動します
php artisan serve
# それから訪問してください: http://127.0.0.1:8000/install
ローカルホストの一般的な注意点
QR スキャナ カメラが http:// で開かない
ブラウザ カメラ API には HTTPS が必要ですが、次の 1 つの例外があります。 http://ローカルホスト そして http://127.0.0.1 セキュアなコンテキストとして扱われます。 LAN IP 経由で FleetHub にアクセスする場合 (例: http://192.168.1.10)、カメラは拒否します。使用 ローカルホスト dev の場合は、Herd / mkcert 経由で HTTPS を有効にします。
ストレージでアクセス許可が拒否されました (macOS / Linux)
アプリがログまたはキャッシュしようとしたときに書き込みエラーが発生した場合は、権限を修正します。 chmod -R 775 ストレージ ブートストラップ/キャッシュ。 Windows では、これは通常必要ありません。
ポートはすでに使用されています
ポート 8000 が別のアプリによって使用されている場合は、別のポートを使用します。
php artisan serve --port=8001
ローカルでメールをテストする
本物の SMTP は、ほとんどのローカルホスト設定では利用できません。 2 つの安全なオプション: (1) セット MAIL_MAILER=ログ で .env — 電子メールは次の宛先にダンプされます ストレージ/ログ/laravel.log 送信される代わりに。または (2) 使用する メールトラップ / メールホッグ 送信メールを偽の受信箱にキャプチャします。
MAIL_MAILER=log
# すべての電子メールは storage/logs/laravel.log に書き込まれます
Frontend assets (Vite / Tailwind)
FleetHub の Vue/Tailwind フロントエンドはパッケージに事前に組み込まれています。 Vue コンポーネントまたは Tailwind 構成を編集する場合は、Node.js 18 以降が必要になります。
npm install
npm run dev # 開発中のホットリロード
npm run build # 実稼働ビルド (デプロイ前に実行)
Hostinger Single への展開 (共有ホスティング)
これは、VPS や技術的な経験のないユーザーに推奨されるパスです。 FleetHub は最も安価なものと完全に互換性があります Hostinger 単一 Web ホスティング プラン (~$2.99/月)。 SSH も Composer もコマンド ラインも必要ありません。シングルには、ネイティブ cron ジョブ、PHP 8.3、すぐに使用できる無料の SSL が含まれています。
ステップ 1 — ホスティングを準備する
- にログインします ホスティンガー hPanel。
- に行く ホスティング → 管理 あなたのドメインのために。
- PHP バージョンを次のように設定します 8.2または8.3 経由 詳細 → PHP 設定。
- これらの PHP 拡張機能が有効になっていることを確認します (通常はデフォルト)。
- OpenSSL, PDO, PDO_MySQL, Mbstring, GD, Tokenizer, XML, Ctype, JSON, Fileinfo
ステップ 2 — MySQL データベースを作成する
- hPanel で、次の場所に移動します。 データベース → MySQL データベース。
- クリック 新しいデータベースの作成。
- 次の 3 つの値に注意してください。
データベース名— 例えばu123_フリートハブユーザー名— 例えばu123_管理者パスワード— 自動生成されるので安全に保管してください
ステップ 3 — ファイルをアップロードする
- に行く ファイル → ファイルマネージャー hPanelで。
- に移動します
public_html/(これはドメインのルートです)。 - デフォルトを削除する
インデックス.htmlまたはデフォルト.phpそのフォルダー内にあります。 - クリック ファイルをアップロードする 全体をアップロードします
ソース.zipパッケージから。
またはコンテンツをアップロードしてください/ソース/必要に応じて、FTP 経由でフォルダーを直接ダウンロードできます。 - ZIP をアップロードした場合は、右クリック→ 抽出する。抽出後、すべてのファイルはルートにあるはずです。
public_html/。 - 確認する
public_html/含まれるもの:アプリ/、公共/、ベンダー/、.htaccess、インデックス.php(で公共/)、.env、など。
.htaccess の根元に存在します public_html/。 URL 書き換えルールが含まれています。ファイル マネージャーで隠しファイルが非表示になっている場合は、 設定→隠しファイルを表示。
ステップ 4 — インストーラーを実行する
- ブラウザを開いて、次の場所に移動します
https://yourdomain.com/install。 - FleetHub インストーラーが表示されます。
- ステップ 1: 要件 — すべてのチェックに合格する必要があります (緑色)。いずれかが失敗した場合は、Hostinger サポートに連絡して、不足している PHP 拡張機能を有効にしてください。
- ステップ 2: データベース — 上記のステップ 2 の認証情報を入力します。
- Host:
localhost - Port:
3306 - Database:
u123_FleetHub - Username:
u123_admin - パスワード: (Hostinger が生成したもの)
- Host:
- ステップ 3: 移行する — [移行とシードの実行] をクリックします。最大 10 秒かかります。リフレッシュしないでください。
- ステップ 4: 管理者 — 管理者アカウントを作成します。強力なパスワードを使用してください。
- 終わり! — Cron URL (これを保存してください) とログイン用のボタンが表示されます。
ステップ5 — Hostinger Cron経由で自動電子メールアラートを設定する
FleetHub は、コンプライアンス期限切れアラート、メンテナンス リマインダー、申請期限切れ通知、運転免許証アラート、車両価値の更新、およびフリート健全性スコアの再計算などのバックグラウンド タスクに Laravel のスケジューラを使用します。設定 1つ hPanel と Laravel の cron ジョブは、いつどのタスクを実行するかを決定します。
- hPanel で、次の場所に移動します。 上級 → Cron ジョブ。
- クリック Cron ジョブの作成。
- タイプを選択してください: カスタム (「PHP」ではありません。引数を渡す必要があります)。
- コマンドとして、「(置き換える)」と入力します。
uXXXXXXHostinger アカウントのユーザー名を使用):
ヒント: ファイルマネージャーを開き、/usr/bin/php /home/uXXXXXX/public_html/artisan schedule:run職人ファイル(プロジェクトのルート)を右クリック→「プロパティ」を選択してフルパスをコピーします。 - スケジュールを設定してください 毎分 — 5 つのフィールド (分、時、日、月、曜日) がすべて次のように設定されています。
*。 - クリック 保存。
以上です。FleetHub は、申請期限超過のリマインダー、メンテナンス アラート、コンプライアンスおよびライセンスの有効期限切れアラートを送信し、車両の減価償却値を更新し、フリートの健全性スコアを自動的に再計算するようになりました。
public_html/public/? 問題ありません。Laravel コードはまだ次の場所にあります。 public_html/ root なので cron パスは残ります /home/uXXXX/public_html/artisan (追加しないでください /公共/)。
- 管理者としてログイン → 設定→システムタブ → Cron URL をコピーします。
- 無料でサインアップしてください cron-job.org。
- cronジョブを作成し、URLを貼り付け、設定します 15分ごと、 保存。
ステップ 6 — 電子メール (SMTP) を構成する
Hostinger は各プランでメール アカウントを提供します。 FleetHub 通知に使用するには:
- hPanel で、次の場所に移動します。 メール → メールアカウント そしてそれを作成します(例:
Noreply@yourdomain.com)。 - を編集します
.envファイルに入れるpublic_html/ファイルマネージャー経由:MAIL_MAILER=smtp MAIL_HOST=smtp.hostinger.com MAIL_PORT=587 MAIL_USERNAME=noreply@yourdomain.com MAIL_PASSWORD=your_email_password MAIL_ENCRYPTION=tls MAIL_FROM_ADDRESS=noreply@yourdomain.com MAIL_FROM_NAME="Your Company Name" - ファイルを保存します。
- FleetHub にログイン → 「設定」→「メール」タブ→「テストメールの送信」。受け取れば完了です。
Hostinger Single に関する一般的な問題
アップロード後に「500 内部サーバー エラー」が発生する
- 確認する
.htaccessに存在しますpublic_html/ルートにあり、書き換えルールが含まれています。 - hPanel で PHP バージョンが 8.2 または 8.3 に設定されていることを確認します。
- チェック
ストレージ/ログ/laravel.log実際のエラーについてはファイルマネージャー経由で確認してください。
アップロード時に「許可が拒否されました」
Hostinger は通常、正しい権限を設定しますが、そうでない場合は次のようになります。
- 右クリック
ストレージ/ファイルマネージャーで → 権限 →に設定755再帰的に。 - 同じ
ブートストラップ/キャッシュ/。
QRコードスキャナカメラが開かない
ブラウザカメラ API には次のものが必要です HTTPS。 Hostinger は Let's Encrypt 経由で無料の SSL を提供します。これを hPanel で有効にします。 SSL → 管理。
予約したメールが送信されない
- hPanel → Cron Jobs → をチェックしてください。 最後の実行 cron エントリの列。空の場合、cron は起動していません。artisan パスが正しいことを確認してください。
- コマンドを手動でテストします: open ターミナル hPanel (利用可能な場合) で cron コマンドを実行します。エラーが発生した場合は、エラー メッセージによって問題 (間違った PHP バージョン、間違ったパスなど) が特定されます。
- SMTP が正しく構成されていることを確認します ([設定] → [電子メール] → [テストの送信])。
- チェック
ストレージ/ログ/laravel.logスケジューラーエラーの場合。
パフォーマンスが遅い
Hostinger Single は共有 CPU/RAM を備えています。チームのユーザー数が 20 人を超える場合は、次のことを考慮してください。
- にアップグレード中 プレミアム (~$3.99/月) — より高速なサーバー、より多くのリソース、複数のデータベース。
- または 仕事 (~$5.99/月) — 専用リソース、毎日のバックアップ、ステージング環境。
cPanel への展開 (共有ホスティング)
このガイドでは標準的なものについて説明します cPanel 共有ホスティング (Namecheap、Bluehost、GoDaddy、およびほとんどの低予算ホスト)。 FleetHub には以下が付属します ベンダー/ 事前に構築されたフロントエンド アセット — Composer、npm、または Web ターミナルは必要ありません。 cPanel にターミナルがない場合は、次を使用します。 SSHアクセス または、以下のファイル マネージャーの回避策を参照してください。
/ホーム/CPANELUSER/ — cPanel のサイドバーを確認します。 一般情報。
ステップ 1 — PHP のバージョンと拡張機能を設定する
- にログインします cパネル。
- 開ける マルチPHPマネージャー (または PHPバージョンの選択) を選択し、ドメインを次のように設定します。 PHP 8.2 または 8.3。
- 開ける MultiPHP INI エディター または PHP 拡張機能 これらが有効になっていることを確認します。
- OpenSSL, PDO, PDO_MySQL, Mbstring, GD, Tokenizer, XML, Ctype, JSON, Fileinfo
- 拡張機能が見つからない場合は、拡張機能リストでそれを有効にするか、ホストのサポートに問い合わせてください。
ステップ 2 — SSL (HTTPS) を有効にする
- に行く SSL/TLSステータス (または SSLを暗号化しましょう /AutoSSL)。
- 走る AutoSSL または、ドメインの無料の証明書をインストールします。
- HTTPS は 必須 ブラウザ内 QR スキャナでカメラにアクセスします。
https://あなたのドメイン.com 南京錠アイコンが表示されることを確認します。
ステップ 3 — MySQL データベースとユーザーを作成する
- 開ける 私のデータベースを管理する (「データベース」の下)。
- 下 新しいデータベースの作成、名前を入力します (例:
フリートハブ) をクリックし、「作成」をクリックします。 cPanel はアカウントのプレフィックスを自動的に追加します。フルネームは次のようになります。cpaneluser_fleethub。 - 下 MySQL ユーザー、強力なパスワードを持つユーザーを作成します。接頭辞付きの完全なユーザー名をコピーします。
- 下 データベースにユーザーを追加、ユーザーとデータベースを選択し、「追加」をクリックしてから付与します。 すべての特権。このステップは見逃しがちですが、これを行わないと次のような結果になります。
アクセスが拒否されました (1045)エラー。 - cPanel に示されているとおり、次の 3 つの値に注意してください。
データベース名— 例えばu123_フリートハブユーザー名— 例えばu123_管理者パスワード— 自動生成されるので安全に保管してください
ステップ 4 — ファイルをアップロードする
- 開ける ファイルマネージャー そしてに行きます
public_html/(ドメインのドキュメントルート)。 - 有効にする 設定→隠しファイルを表示 それでわかります
.htaccessそして.env。 - デフォルトを削除する
インデックス.htmlでpublic_html/存在する場合。 - パッケージをアップロードする
ソース.zipそして 抽出する それをアップロードするか、そのコンテンツをアップロードします/ソース/FTP経由でフォルダに移動します。 - 抽出後、
public_html/を含める必要がありますアプリ/、公共/、ベンダー/、 根.htaccess、 そして職人同じレベルで。
.htaccess すべてのリクエストを 公共/ フォルダー — そうします ない ほとんどのホストではドキュメント ルートを手動で変更する必要があります。
ステップ 5 — インストーラーを実行する前に .env を準備する
このステップを完了してください 前に 訪問 /インストール。 Laravel には有効なファイルが必要です APP_KEY でデータベース設定を修正してください .env。
- ファイルマネージャーで、コピーします
.env.exampleに.env(と同じフォルダ職人)。 - 編集
.envそして最小限に設定します:APP_NAME=FleetHub APP_ENV=production APP_DEBUG=false APP_URL=https://yourdomain.com DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=cpaneluser_fleethub DB_USERNAME=cpaneluser_admin DB_PASSWORD="your_password" SESSION_DRIVER=file CACHE_STORE=file - セット
DB_CONNECTION=mysql— デフォルト.env.exampleSQLiteを使用します。共有ホスティングには MySQL が必要です。 - セット
SESSION_DRIVER=ファイルそしてCACHE_STORE=ファイル最初の移行の前に (「セッション テーブルが見つかりません」エラーを回避します)。 - 包む
DB_パスワード特殊文字が含まれる場合は二重引用符で囲みます (#、$、!、など)。
APP_KEY を生成します (ターミナルは必要ありません)
多くの cPanel プランには Web ターミナルが含まれていません。次のいずれかの方法を使用します。
- SSHアクセス (cPanel → セキュリティ → SSH アクセス): PuTTY または PowerShell に接続し、実行します。
cd ~/public_html && php 職人キー:生成。 - ファイルマネージャーヘルパー - 作成する
public/genkey.php一時的にブラウザでアクセスし、出力をコピーします。APP_KEY=、すぐにファイルを削除してください。<?php echo 'base64:' . base64_encode(random_bytes(32)); - パソコン上で — PHP がローカルにインストールされている場合は、実行します
php -r "echo 'base64:'.base64_encode(random_bytes(32));"結果をに貼り付けます.env。
genkey.php キーをコピーするとすぐに。ヘルパー スクリプトを運用サーバー上に絶対に残さないでください。
- セット
ストレージ/そしてブートストラップ/キャッシュ/へのアクセス許可 755 (再帰的) インストーラーが書き込みエラーを報告した場合。
ステップ 6 — Web インストーラーを実行する
- 開ける
https://yourdomain.com/installブラウザで。 - ステップ 1: 要件 — すべてのチェックに合格する必要があります (緑色)。上記の手順 1 で不足している PHP 拡張機能を修正します。
- ステップ 2: データベース — ステップ 3 で取得した正確な接頭辞付きの名前を入力します。
- Host:
127.0.0.1orlocalhost - Port:
3306 - Database:
cpaneluser_fleethub - Username:
cpaneluser_admin - Password: (your MySQL password)
- Host:
- ステップ 3: 移行する — [移行とシードの実行] をクリックします。最大 10 秒かかります。ページを更新しないでください。
- チェックを外します デモデータを含める クリーンな実稼働インストールの場合。
- ステップ 4: 管理者 — 管理者アカウントを作成します。
- 終わり! — 最後の画面に表示される Cron URL を保存します。
ステップ 7 — 電子メールアラート用の Cron ジョブをセットアップする
FleetHub では、Laravel がコンプライアンス アラート、メンテナンス リマインダー、要求期限切れ通知、およびその他のスケジュールされた電子メールを送信できるように、1 分ごとに 1 つの cron ジョブを実行する必要があります。
- cPanel で、次の場所に移動します。 上級 → Cron ジョブ。
- 下 新しい Cron ジョブを追加、スケジュールを次のように設定します 毎分 (
* * * * *)。 - コマンドを入力します(置換
パネルユーザー一般情報から cPanel ユーザー名を置き換えます):
ヒント: PHP パスは次のとおりです。/usr/local/bin/php /home/CPANELUSER/public_html/artisan schedule:run/usr/local/bin/phpまたは/usr/bin/php— 不明な場合はホストに尋ねてください。職人パスはプロジェクトをアップロードした場所です (通常は/home/CPANELUSER/public_html/artisan)。 - クリック 新しい Cron ジョブを追加 保存するために。
public_html/public/? クロンはまだ指摘しています /home/CPANELUSER/public_html/artisan — 追加しないでください /公共/。
- 管理者としてログイン → 設定→システム →Cron URLをコピーします。
- に登録してください cron-job.org (無料)。
- その URL にアクセスするジョブを 15 分ごとに作成します。
ステップ 8 — 電子メール (SMTP) を構成する
送信通知用の cPanel 電子メール アカウントを作成します。
- に行く 電子メールアカウント →作成例
Noreply@yourdomain.com。 - 編集
.envファイルマネージャーで:MAIL_MAILER=smtp MAIL_HOST=mail.yourdomain.com MAIL_PORT=587 MAIL_USERNAME=noreply@yourdomain.com MAIL_PASSWORD=your_email_password MAIL_ENCRYPTION=tls MAIL_FROM_ADDRESS=noreply@yourdomain.com MAIL_FROM_NAME="Your Company Name" - 保存してから、FleetHub で次のようにします。 「設定」→「メール」→「テストメールを送信」。
cPanel に関する一般的な問題
"Access denied for user" (SQLSTATE 1045)
- データベース名とユーザー名をコピーします その通り cPanel から — アカウントのプレフィックスを含む。
- 完了したことを確認する データベースにユーザーを追加 すべての特権を備えています。
- cPanel で MySQL パスワードをリセットして更新する
.env— 引用符で囲みますDB_パスワード特殊文字が含まれている場合。
データベース ステップが完了した後に移行が失敗する
- ウィザードはフォームから認証情報をテストしますが、Migrate は次の情報を読み取ります。
.env。両方が一致していることを確認してください。 - 消去
ブートストラップ/キャッシュ/config.php存在する場合は、再試行してください。 - 確保する
DB_CONNECTION=mysqlに設定されています.env(SQLiteではありません)。
移行中の「無効なデフォルト値」 (1067)
共有ホスティングの MySQL 厳密モードでは、特定のカラムのデフォルトが拒否される場合があります。チェック ストレージ/ログ/laravel.log 正確な移行エラーを確認するには、必要な拡張機能がすべて有効になっている PHP 8.2 以降を確認してください。
アップロード後に「500 内部サーバー エラー」が発生する
- ルートを確認する
.htaccessが存在し、PHP は 8.2 以降です。 - チェック
ストレージ/ログ/laravel.log実際のエラーについては。 - 確認する
APP_KEYに設定されています.env— 空のキーは 500 個のエラーを引き起こします。
cPanelにターミナルがありません
これは多くの共有プランでは正常です。使用 SSHアクセス (有効な場合)、一時的な genkey.php ステップ 5 の方法を使用するか、ローカル PC でキーを生成します。
QRスキャナカメラが開かない
SSL を有効にする SSL/TLS ステータス → AutoSSL からサイトにアクセスします https://。
構成
.env ファイル
| 鍵 | 説明 | 例 |
|---|---|---|
APP_NAME | タイトルバーにアプリケーション名が表示される | FleetHub |
APP_URL | インストールのパブリック URL | https://fleet.example.com |
APP_DEBUG | に設定します 間違い 生産中 | false |
DB_* | データベース接続の詳細 | mysql, 127.0.0.1, 3306, ... |
MAIL_MAILER | Mail driver | smtp, log, mailgun |
MAIL_HOST | SMTPサーバーのホスト名 | smtp.gmail.com |
MAIL_PORT | SMTPポート | 587 |
MAIL_USERNAME | SMTPユーザー名 | your@email.com |
MAIL_PASSWORD | SMTPパスワードまたはアプリトークン | ********** |
MAIL_FROM_ADDRESS | デフォルトの差出人アドレス | noreply@example.com |
アプリ内設定
機密性の低いオプションのほとんどは、次から構成できます。 管理者→設定:
- 一般的な: 会社名/メールアドレス/電話番号、ブランド名
- 艦隊: 車両コードプレフィックス、引き継ぎチェックリストテンプレート、メンテナンスデフォルト、公共車両ページモード
- 電子メール: SMTP を検証するためにテスト電子メールを送信します
- 通知: コンプライアンス、メンテナンス、要求、およびライセンスのアラートを切り替えます
- ローカリゼーション: タイムゾーン、日付形式、通貨 - アプリ全体に適用されます
- コンプライアンス: コンプライアンス タイプのプリセットを管理します (保険、登録、道路税など)
- ブランディング: アプリ名とロゴ — ログイン、フッター、ブラウザー ページのタイトルを更新します
- 外観: ライト モードとダーク モードのブランド、ステータス、テキストの色をカスタマイズします。「」を参照してください。 ブランド変更ガイド よくある質問の中で
多言語サポート
FleetHub には、RTL アラビア語やヒンディー語を含む 11 の言語が標準で付属しています。ユーザーは、右上のヘッダーにあるフラグのドロップダウンを使用して言語を切り替えます。
出荷される言語
| コード | 言語 | 方向 |
|---|---|---|
en | English (default) | LTR |
vi | Tiếng Việt | LTR |
es | Español | LTR |
fr | Français | LTR |
de | Deutsch | LTR |
zh | 简体中文 | LTR |
ja | 日本語 | LTR |
pt-BR | Português (Brasil) | LTR |
ru | Русский | LTR |
ar | العربية | RTL |
hi | हिन्दी | LTR |
言語を切り替える方法
- 右上のヘッダーにある旗のアイコンをクリックして、ドロップダウンを開きます。
- リストから言語を選択してください。
- ページがリロードされます。すべての UI ラベル、日付、通貨形式が切り替わります。
- 選択内容はユーザー アカウントと Cookie の両方に保存されます (1 年間)。
/ロケール/{コード}これは、PHP サーバーが実行されている場合にのみ機能します。常に実際のドメイン (運用環境) 経由でアクセスするか、 http://ローカルホスト:8000 (開発者と php 職人サーブ)。一方、このようなドキュメント ファイルは完全にスタンドアロンであり、直接開くことができます。
カスタム言語の追加 (管理者)
に行く 管理 → 翻訳 (管理者ユーザー 翻訳を管理する 許可):
- 「ロケールを追加」をクリックします — コードを入力します (例:
mkマケドニア語の場合)、表示名、ネイティブ名、フラグ SVG ファイル名、方向 (LTR/RTL)、および翻訳のコピー元のベース ロケール。 - 新しいロケールが言語スイッチャーと [設定] → [ローカリゼーション] のデフォルト言語リストに表示されます。
- DB に保存された翻訳は、ファイル翻訳を自動的にオーバーライドします。
lang/{コード}/。
Translation Editor
エディターには、ファイルごとにグループ化されたすべての翻訳キーがリストされます (アセット、ナビゲーション、設定など)。キーは、ファイルのベースラインとデータベースのオーバーライドを示します。
- ロケール、翻訳グループ、または検索テキストでフィルターします。
- インラインで編集するには値をクリックします。変更はすぐにデータベースに保存されます。
- キーをリセットしてファイルのベースラインに戻します。
- 組み込みロケール (en、vi、es など) は編集できます。カスタム ロケールは完全に DB 駆動です。
- を持つユーザーのみ 翻訳を管理する 権限があればこのページにアクセスできます。
CSV import / export
- 輸出 — ロケールのすべてのキーを CSV としてダウンロード (
グループ、キー、値)。 - 輸入 — 同じ列を含む CSV をアップロードします。既存の DB オーバーライドが更新され、新しいキーが挿入されます。
ユーザーごとのデフォルトのロケール
各ユーザーは ロケール カラム。 Laravel のおかげで、電子メール通知は受信者の優先言語で自動的に送信されます。 ロケール設定あり 契約。
サイトのデフォルト言語は以下で設定されます 設定 → ローカリゼーション → デフォルト言語。個々のユーザーは、ヘッダー言語スイッチャーを介してこれをオーバーライドします。
機能リスト (15 モジュール グループ)
車両管理
- 自動生成された車両コード (VH プレフィックス)
- ナンバープレート、VIN、メーカー、モデル、燃料の種類
- QRコード生成&一括印刷
- ステータス、状態、走行距離計の追跡
- Excelの一括インポート/エクスポート
- 同一の車両を購入するためのクローン車両
- ライフサイクル タイムラインを含む 7 タブの詳細ページ
申請と引き渡し
- 申請→承認→返品のワークフロー
- カレンダービューと競合検出
- 2Dダメージマッパー+デジタル署名
- PDF引き継ぎレポートのエクスポート
メンテナンス
- 予防および是正のスケジュール設定
- 優先度ごとのカレンダー表示
- 次の予防策を自動スケジュールする
- コスト追跡 → 経費の自動同期
- 期限前にメールでリマインダーを送信する
コンプライアンスと燃料
- 一般的なコンプライアンス項目(保険、登録、許可)
- 運転免許証の有効期限の追跡
- レシートのアップロードと圧縮を備えた燃料ログ
- 不正行為防止走行距離計の検証
TCO と減価償却
- 3つの減価償却方法生産単位 (km)
- コスト/km メトリクスを含む TCO ダッシュボード
- 燃料とメンテナンスを経費に自動同期
- 減価償却曲線グラフ
レポート
- 7つのフリートレポートタイプ
- Excel + PDF エクスポート
- ApexCharts ダッシュボード
- 日付範囲フィルター
フリート運用
- 毎日の再計算によるフリート健全性スコア
- ライセンス同期によるドライバー管理
- 車両費用(保険料、高速料金、駐車場代など)
- ドライバーの QR クイックスキャン (燃料、走行距離計、事故)
ローカライゼーション
- 11 の組み込み UI 言語 + カスタム ロケール
- 検索とインライン編集を備えた翻訳エディター
- 一括翻訳更新のための CSV インポート/エクスポート
- タイムゾーンと通貨の設定はアプリ全体に適用されます
ブランディングと外観
- 「設定」→「ブランディング」→「アプリ名」からのブラウザページのタイトル
- 「設定」→「外観」でアプリの色をカスタマイズします(ライト&ダークモード)
ユーザーと役割
FleetHub には内部フリート運用向けの 5 つの事前設定済み役割があります:
| 役割 | 能力 |
|---|---|
| Admin | フル システム アクセス - ユーザー、部門、設定、監査ログ、Webhook、翻訳 |
| Fleet Manager | 車両、ドライバー、要求、引き渡し、メンテナンス、燃料ログを管理します。要求を承認する。完全なレポートへのアクセス |
| 会計士 | TCO ダッシュボード、経費、減価償却、コンプライアンス レポート — 財務を重点的に読む |
| Department Head | 自分の部門の要求を承認し、部門の車両とレポートを表示します |
| Driver | 割り当てられた車両の表示、燃料ログの送信、クイックスキャンアクション、自身の要求の表示 |
デモアカウント (パスワード: パスワード): admin@fleethub.test、 マネージャー@fleethub.test、 dept@fleethub.test、 会計士@fleethub.test、 driver@fleethub.test。インストールまたはシード中にデモ データを有効にします。権限は Spatie の役割です。管理者は権限ごとに微調整できます。
車両管理
車両の作成
- 車両 → 新規車両 に移動します。
- ナンバー、メーカー、モデル、年式、燃料タイプ、カテゴリ、部門を入力します。
- 購入日と価格を追加します(減価償却と TCO に必要)。
- 画像をアップロードします(複数ファイル対応、各 5 MB まで — モバイルで自動圧縮)。
- 保存 — 車両コードと QR コードが自動生成されます。
車両コード形式
デフォルト: {PREFIX}-{YEAR}-{NNNN}、例 VH-2026-0001。Settings → Fleet → Vehicle Code Prefix で設定可能。
一括インポート
- 車両ページで Import をクリックします。
- Excel テンプレートをダウンロードします。
- データを入力 — 必須列:
license_plate、make、model、category_name。 - ファイルをアップロードします。
QR コードとクイックスキャン
すべての車両は、作成時に QR コードを自動的に受け取ります。スキャンすると、認証されたドライバー向けの公共車両ページまたはアプリ内クイック アクションが開きます。
ラベルの印刷
- シングルラベル: 車両の行のプリンター アイコンをクリックします。
- バッチプリント:複数の車両を選択→QRラベルを印刷します。 A4 フォーマット、1 行あたり 2 つのラベル。
アプリ内スキャン
クリック QRをスキャン 車両ページで。カメラの許可を許可します。 HTTPS またはローカルホストを備えた最新のブラウザで動作します。
公共車両ページ
各車両には公開 URL があります。 /v/{車両コード} — ログインせずに素早く識別するのに役立ちます。
- で設定します 設定 → フリート → 公共車両ページ:パブリック、ログインが必要、または無効。
- ゲスト モードでは、基本的な読み取り専用情報 (プレート、メーカー/モデル) が表示されます。ドライバーのクイックアクションにはログインが必要です。
- 変更後
APP_URL、 クリック すべての QR コードを再生成する 設定で。
ワークフロー
車両申請
従業員は必要な車両の購買依頼を提出します。流れ: リクエスト→承認→返品 (または 拒否されました)。フリートマネージャーまたは部門長が承認します。カレンダー ビューにはフリート全体の予約が表示されます。返却期限を過ぎた場合、電子メールアラートがトリガーされます。
車両引き渡し
- 要求が承認されたら、 送信ハンドオーバー ドライバーが車に乗る前に。
- 走行距離計を記録し、チェックリストに記入し、2D マッパーで損傷をマークし、写真を添付し、デジタル署名を取得します。
- 記録用に PDF 引き継ぎレポートを保存してダウンロードします。
- 車両が返却されたら、 受信ハンドオーバー — 状態を比較し、走行距離計を更新し、ドライバーの割り当てをクリアします。
- 受信した引き渡しが完了すると、要求が返されたものとしてマークされ、車両のステータスが利用可能に戻ります。
減価償却と TCO
FleetHub は、3 つの方法のいずれかを使用して車両の減価償却を計算します。減価償却費は、燃料ログや経費とともに TCO ダッシュボードに表示されます。
| 方法 | 式 | 使用事例 |
|---|---|---|
| 直線 | (Cost - Salvage) / Useful Life | 最も一般的です。毎年等しい減価償却費 |
| 定率法 | 2 / Useful Life × Book Value | 加速されました。税金目的 |
| 生産単位 | (今回の走行距離 / 予想総走行距離) × (コスト − サルベージ) | 総走行距離が予測可能な車両 (オドメーターベース) |
デフォルトは車両カテゴリから継承されます。 現在の値 経由で毎月自動更新されます フリートハブ:車両値の更新。 TCO = 購入コスト + 選択した期間の車両費用の合計。
カスタムフィールド
[管理] → [カスタム フィールド] を使用すると、車両に無制限のカスタム属性を追加できます。
- 種類: テキスト、数値、日付、選択 (ドロップダウン)、テキストエリア、ファイル、チェックボックス
- 範囲: すべてのカテゴリまたは特定の車両カテゴリに適用されます
- 再注文: グリップハンドルをドラッグアンドドロップします。
- 必須フィールドは車両の保存時に検証されます
レポート
7 つの組み込みフリート レポートには、[レポート] メニューからアクセスできます。
- TCO の概要 — 車両ごとおよびフリート全体の総所有コスト
- 減価償却スケジュール — 輸出による車両ごとの価値の損失
- 維持費 — 車両、種類、月ごとの支出
- 燃料消費量とコスト — km/l の傾向と異常のハイライト
- リクエストの使用法 — 車両ごとの長期にわたる予約率
- コンプライアンスの有効期限 — 車の書類と運転免許証がまもなく期限切れになります
- 部門の車両割り当て — 部門ごとの車両と使用状況
すべてのレポートのサポート エクセル そして PDF ページヘッダーのボタンからエクスポートします。
Webhooks
FleetHub は、主要なフリート イベントについて外部サービスに通知できます。
利用可能なイベント
vehicle.created,vehicle.updated,vehicle.deletedrequisition.approved,requisition.rejected,requisition.overdue,requisition.returnedhandover.completedcompliance.expiring,compliance.expiredmaintenance.due,maintenance.overdue,maintenance.completedfleet_health_score.dropped
ペイロード形式
{
"event": "handover.completed",
"timestamp": "2026-06-23T08:00:00+00:00",
"data": {
"vehicle_id": 1,
"vehicle_code": "VH-2026-0001",
"license_plate": "51A-12345",
"handover_id": 12,
"direction": "outgoing",
"driver_id": 4
}
}
署名の検証
シークレットが設定されている場合、リクエストにはヘッダーが含まれます X-FleetHub-署名 ペイロード本体の HMAC-SHA256 が含まれます。お客様側で確認してください:
$expected = hash_hmac('sha256', $rawBody, $secret);
if (hash_equals($expected, $request->header('X-FleetHub-Signature'))) {
// 有効
}
再試行ポリシー
配信が失敗すると、200 ミリ秒の遅延で 3 回再試行されます。 10 回連続して失敗すると、Webhook は自動的に無効になります。
スケジュールされたタスク
FleetHub はバックグラウンド ジョブに Laravel のスケジューラーを使用します。必要なのは 1つ cron エントリ — Laravel はそれぞれをディスパッチします フリーハブ: 適切なタイミングでコマンドを実行します。
共有ホスティング (cPanel / Hostinger Cron ジョブ UI)
見る cPanelのセットアップ → ステップ7 または ホスティンガーのセットアップ → ステップ 5。要するに: 上級 → Cron ジョブ、 指示:
/usr/bin/php /home/uXXXXXX/public_html/artisan schedule:run
スケジュール: 1分ごと (* 5 つのフィールドすべてで)。
cPanelのcronコマンド
交換する パネルユーザー cPanel ユーザー名を使用して:
/usr/local/bin/php /home/CPANELUSER/public_html/artisan schedule:run
VPS / 専用サーバー(crontab)
走る crontab -e Web ユーザーとして以下を追加します。
* * * * * cd /path/to/FleetHub && php artisan schedule:run >> /dev/null 2>&1
フォールバック: 外部 URL pinger
ホストに cron がない場合は、アプリ内 Cron URL ([設定] → [システム] タブ) を次のように使用します。 cron-job.org (無料、15分ごと)。
自動的に実行されるジョブ
| 時間 | 指示 | 目的 |
|---|---|---|
| 毎日08:00 | fleethub:send-requisition-overdue-alerts | 要求は承認されましたが、要求された終了日を過ぎても返されませんでした |
| 毎日08:30 | fleethub:send-maintenance-reminders | 今後のメンテナンスのリマインダー |
| 毎日09:00 | fleethub:send-compliance-expiry-alerts | 30/14/7/1 日で期限切れになるコンプライアンス項目 |
| 毎日09:30 | fleethub:send-driver-license-alerts | 運転免許証の有効期限切れに関するアラート |
| 毎月1日02:00 | fleethub:update-vehicle-values | 車両の現在価値を減価償却から更新 |
| 毎日03:00 | fleethub:recalculate-fleet-health-score | フリート健全性スコアを再計算してキャッシュする |
アップグレードガイド
FleetHub v1.0.0 は CodeCanyon 初回リリースです。
トラブルシューティング
ストレージで「アクセス許可が拒否されました」
chmod -R 775 storage bootstrap/cache
chown -R www-data:www-data storage bootstrap/cache
QRコードスキャナーでカメラが開かない
ブラウザカメラ API には次のものが必要です HTTPS。 SSLをインストールするか使用します ローカルホスト テスト用。
メールが届かない
チェック ストレージ/ログ/laravel.log。使用 「設定」→「メール」→「テストメールを送信」 SMTP を検証します。
cPanel のデータベース「アクセスが拒否されました」(1045)
ユーザー名/パスワードが間違っているか、ユーザーとデータベースの割り当てがありません。見る cPanel セットアップ → 一般的な問題。
共有ホスティングでの移行エラー
確保する SESSION_DRIVER=ファイル そして CACHE_STORE=ファイル で .env 最初の移行前。チェック ストレージ/ログ/laravel.log 詳細については。
インストール前に APP_KEY が見つからない / 500 エラーが発生する
Laravel に必要なもの APP_KEY で .env。見る cPanelのセットアップ → ステップ5 ターミナルを使用しない生成方法の場合。
インストールをリセットする
消去 ストレージ/インストール済み.ロック そして訪問してください /インストール また。移行を再実行すると、既存のデータは消去されます。
パフォーマンス - 遅い車両リスト
走る php職人の最適化。 MySQL インデックスが存在することを確認します。 車両.車両コード、 車両.ナンバープレート、 車両のステータス (移行によって作成されます)。
変更履歴
v1.0.0 — 初回リリース (2026-06)
- QR コード自動生成を備えた車両 CRUD と公開ページ
/v/{車両コード} - 5 つのユーザー ロール (管理者、フリート マネージャー、部門長、会計士、ドライバー)
- ライセンスの有効期限をコンプライアンス項目と同期してドライバーを管理
- カレンダーと期限超過アラートを備えた車両申請ワークフロー
- 2D ダメージ マッパー、チェックリスト、署名、PDF を使用した車両引き渡し
- 走行距離計の不正行為防止と自動経費同期による燃料ログ管理
- 車両費用とキロあたりのコスト分析を備えた TCO ダッシュボード
- 減価償却エンジン — 定額法、定率法、生産単位 (km)
- 30/14/7/1 日の有効期限アラートを備えた一般的なコンプライアンス項目
- 予防的な自動更新とコスト追跡によるメンテナンスのスケジュール設定
- 毎日の再計算と内訳モーダルを備えたフリート健全性スコア
- Excel および PDF エクスポートを備えた 7 つのフリート レポート
- 車両カテゴリーを範囲としたカスタムフィールド(7種類)
- HMAC 署名を使用した Webhook (
X-FleetHub-署名) と自動再試行 - 差分ビューアを使用した Spatie Activitylog による監査ログ
- 多言語 UI: RTL アラビア語とヒンディー語を含む 11 のロケール
- 会社、フリート、電子メール、通知、コンプライアンスのプリセットの設定 UI
- デモ データ シーダーを備えた Web ベースのインストール ウィザード
- ダークモード、モバイルファーストUI、アップロード時の画像圧縮
クレジット
オープンソースライブラリを使用
- Laravel 11 — MIT
- Vue 3 — MIT
- Inertia.js — MIT
- Tailwind CSS — MIT
- Spatie Permission, Media Library, Activitylog — MIT
- Phosphor Icons — MIT (duotone weight)
- ApexCharts — MIT
- html5-qrcode — Apache 2.0
- Simple QrCode — MIT
- Laravel Excel — MIT
- Laravel DomPDF — MIT