メインコンテンツまでスキップ

インストールガイド

これは FeedbackPulse SaaS の完全なステップバイステップインストールガイドです。各ステップを注意深く実行してください。


インストール前チェックリスト

始める前に、以下のものを用意してください:

  • すべての 要件 を満たしたサーバー
  • サーバーの IP アドレスを指すドメイン名
  • サーバーへの SSH アクセス(またはファイルアップロード用の FTP)
  • MySQL/MariaDB データベースと認証情報
  • SMTP メールアカウント(Gmail、Mailgun、Amazon SES など)
  • Envato 購入コード(CodeCanyon の注文から)

ステップ 1:サーバーへのファイルのアップロード

オプション A:SSH を使用(推奨)

# サーバーに接続
ssh user@your-server-ip

# Web ディレクトリに移動
cd /var/www

# ZIP ファイルをアップロードして展開
# (SCP、SFTP、または一時リンクからの wget で ZIP をアップロード)
unzip feedbackpulse-saas.zip -d feedbackpulse-saas
cd feedbackpulse-saas

オプション B:FTP/SFTP を使用

  1. FileZilla、WinSCP などを使用してサーバーに接続します
  2. Web ディレクトリに移動します(通常 /var/www/ または /home/user/public_html/
  3. 展開した feedbackpulse-saas フォルダー全体をアップロードします
  4. public/ サブディレクトリがアクセス可能であることを確認します

オプション C:cPanel ファイルマネージャーを使用

  1. cPanel にログインします
  2. ファイルマネージャーを開く → public_html(またはサブディレクトリ)に移動します
  3. ZIP ファイルをアップロードします
  4. その場で展開します
  5. 重要: ドキュメントルートを public/ フォルダーに設定する必要があります(Apache 設定 を参照)

ステップ 2:ファイルパーミッションの設定

cd /var/www/feedbackpulse-saas

# 所有権の設定(www-data をあなたの Web サーバーユーザーに置き換え)
# Apache: www-data | Nginx: www-data または nginx
sudo chown -R www-data:www-data .

# ディレクトリパーミッションの設定
sudo find . -type d -exec chmod 755 {} \;
sudo find . -type f -exec chmod 644 {} \;

# storage とキャッシュを書き込み可能にする
sudo chmod -R 775 storage bootstrap/cache

ステップ 3:Web サーバーの設定

Web サーバーは、プロジェクトルートではなく、プロジェクト内の public/ ディレクトリを必ず指す必要があります。これはセキュリティ上の重要な要件です。

Web サーバーを選択してください:

簡易バージョン:

Apache:

DocumentRoot /var/www/feedbackpulse-saas/public

Nginx:

root /var/www/feedbackpulse-saas/public;

設定後、Web サーバーを再起動します:

# Apache
sudo systemctl restart apache2

# Nginx
sudo systemctl restart nginx

ステップ 4:ストレージシンリンク(自動)

Web インストーラーは最終ステップで自動的にストレージシンリンクの作成を試みます。コマンドを実行する必要はありません。

  • VPS/専用サーバー: シンリンクは自動的に作成されます。操作不要です。
  • 共有ホスティング: ホストでシンリンクが無効になっている場合、FeedbackPulse はアップロードされたファイル(ロゴ、画像)を配信するために内蔵の PHP フォールバックを使用します。すべて正常に動作します。

インストーラーの完了ページで、シンリンクが作成されたか、フォールバックがアクティブかどうかが表示されます。


ステップ 5:Web インストーラーの実行

ブラウザを開いて以下にアクセスします:

https://yourdomain.com/install

インストーラーが 5 つのステップを案内します。詳細なスクリーンショットと説明については Web インストーラーウォークスルー を参照してください。

簡易まとめ:

ステップ 1:ライセンス確認

  • Envato/CodeCanyon の購入コードを入力します
  • これにより Envato API でライセンスが検証されます
  • Envato を使用していない場合は、スキップオプションがある場合があります

ステップ 2:要件の確認

  • インストーラーが自動的に以下を確認します:
    • ベンダー依存関係(vendor/autoload.php が存在するか)
    • PHP バージョン(8.2 以上)
    • 必要な PHP エクステンション
    • ディレクトリパーミッション(storage、bootstrap/cache)
    • ホスティング環境(共有ホスティングを検出し、互換性情報を表示)
  • 先に進む前に失敗した項目を修正してください

ステップ 3:データベースのセットアップ

  • データベース認証情報を入力します:
    • ホスト: 127.0.0.1(または localhost
    • ポート: 3306
    • データベース名: feedbackpulse(事前に作成が必要!)
    • ユーザー名: データベースのユーザー名
    • パスワード: データベースのパスワード
  • インストーラーがすべてのマイグレーションを実行し、デフォルトデータをシードします

事前にデータベースを作成してください:

CREATE DATABASE feedbackpulse CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

ステップ 4:管理者アカウント

  • スーパー管理者アカウントを作成します:
    • 名前: あなたの名前
    • メール: [email protected]
    • パスワード: 強力なパスワード(最低 8 文字)
  • これはプラットフォーム全体を管理するためのアカウントです

ステップ 5:メールの設定

  • SMTP の詳細を入力します:
    • ホスト: 例:smtp.gmail.com
    • ポート: 587(TLS)または 465(SSL)
    • ユーザー名: SMTP ユーザー名
    • パスワード: SMTP パスワードまたはアプリパスワード
    • 暗号化: TLS(推奨)
    • 送信元アドレス: [email protected]
  • このステップをスキップして後で Admin Settings で設定することもできます

完了

  • セッションとキャッシュドライバーを本番用 database に切り替えます
  • Web ベースの cron エンドポイント用に CRON_TOKEN を自動生成します
  • storage/installed.lock ファイルを作成します(再実行を防止)
  • cron ジョブセットアップ手順(CLI と URL の両オプション)と次のステップを表示するサクセスページを表示します

ステップ 6:Cron ジョブの設定

FeedbackPulse はスケジュールタスクを実行するために cron ジョブが必要です。これは以下のために必須です:

  • メールダイジェストの送信(毎日/毎週)
  • トライアル期限の処理
  • データ保持ポリシーの適用
  • 利用状況アラートの送信
  • AI 異常検知の実行
  • スケジュールレポートの送信

オプション 1 — CLI コマンド(VPS / 専用サーバー):

crontab -e

以下の行を追加します:

* * * * * cd /var/www/feedbackpulse-saas && php artisan schedule:run >> /dev/null 2>&1

オプション 2 — URL/wget(共有ホスティング):

ホスティングパネルが URL ベースの cron のみサポートする場合は、Web cron エンドポイントを使用してください(CRON_TOKEN はインストール中に自動生成され、完了ページに表示されます):

wget -q -O /dev/null "https://yourdomain.com/cron/run?token=YOUR_CRON_TOKEN"

ヒント: インストーラーの完了ページには、実際のサーバーパスとトークンが事前入力された両方のオプションが表示されます。そこからコピーしてください!

詳細については Cron ジョブとキューワーカー を参照してください。


ステップ 7:SSL(HTTPS)の設定

FeedbackPulse は認証と決済データを扱うため、HTTPS は強く推奨されます。

Let's Encrypt の使用(無料)

# Certbot をインストール
sudo apt install certbot python3-certbot-nginx # Nginx の場合
# または
sudo apt install certbot python3-certbot-apache # Apache の場合

# 証明書を取得
sudo certbot --nginx -d yourdomain.com # Nginx の場合
# または
sudo certbot --apache -d yourdomain.com # Apache の場合

Certbot が Web サーバーの HTTPS 設定と自動更新を自動的に行います。

詳細については SSL 証明書 を参照してください。


ステップ 8:インストールの確認

このチェックリストを確認してください:

確認項目方法期待される結果
ランディングページの読み込みhttps://yourdomain.com にアクセスランディングページが表示される
ログインの動作https://yourdomain.com/login にアクセススーパー管理者認証情報でログイン
管理パネルhttps://yourdomain.com/admin/dashboard にアクセス管理ダッシュボードが表示される
ストレージリンクhttps://yourdomain.com/storage/ にアクセス404 エラーなし
ヘルスチェックhttps://yourdomain.com/up にアクセス「OK」テキストが表示される
Cron の動作Admin → Settings を確認Cron の警告がない
メールの動作Admin → Settings → Email → Send Testテストメールを受信する

インストール後の手順

インストール完了後:

  1. サブスクリプションプランの確認Admin → Plans(価格、制限、機能を編集)
  2. 決済ゲートウェイの設定Admin → Settings → Payments(Stripe/PayPal API キー)
  3. ランディングページのカスタマイズAdmin → Landing Page
  4. メール配信のテストAdmin → Settings → Email → Send Test Email
  5. ワイルドカード DNS の設定(オプション)— テナントサブドメイン用。ワイルドカード DNS セットアップ を参照
  6. 最初のテナントを作成 — シークレットウィンドウで /register から登録

インストールのトラブルシューティング

問題解決策
白いページが表示されるエラーは storage/logs/laravel.log で確認してください。通常はパーミッションの問題です。
500 サーバーエラー一時的にデバッグモードを有効化:.envAPP_DEBUG=true を設定してエラーを確認します。
「Class not found」vendor/ ディレクトリが存在し、完全であることを確認してください。必要に応じてダウンロードパッケージから再アップロードします。
データベース接続拒否認証情報を確認し、MySQL が起動していることを確認し、localhost127.0.0.1 の違いを確認してください。
インストーラーが読み込まれないWeb ルートが public/ ディレクトリを指していることを確認してください。
CSS/JS が読み込まれないブラウザキャッシュをクリアしてください。画像が見つからない場合、共有ホスティングではストレージフォールバックが自動的に処理します。VPS では、スーパー管理者として /update にアクセスしてシンリンクを再作成してください。
パーミッション拒否ステップ 2 の chownchmod コマンドを再実行してください。

詳細については トラブルシューティング を参照してください。


次のステップ