Apache 設定
FeedbackPulse SaaS の完全な Apache セットアップガイドです。
前提条件
- Apache 2.4 以上
mod_rewriteが有効mod_headersが有効(セキュリティヘッダー用)- PHP 8.4 以上(
mod_phpまたは PHP-FPM 経由)
必要なモジュールの有効化
sudo a2enmod rewrite headers ssl
sudo systemctl restart apache2
基本バーチャルホ スト
新しいバーチャルホストファイルを作成します:
sudo nano /etc/apache2/sites-available/feedbackpulse.conf
以下を貼り付けます:
<VirtualHost *:80>
ServerName yourdomain.com
ServerAlias www.yourdomain.com
DocumentRoot /var/www/feedbackpulse-saas/public
<Directory /var/www/feedbackpulse-saas/public>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# ログ設定
ErrorLog ${APACHE_LOG_DIR}/feedbackpulse-error.log
CustomLog ${APACHE_LOG_DIR}/feedbackpulse-access.log combined
</VirtualHost>
サイトを有効化して再起動します:
sudo a2ensite feedbackpulse.conf
sudo a2dissite 000-default.conf # デフォ ルトサイトを無効化(オプション)
sudo systemctl restart apache2
HTTPS バーチャルホスト(Let's Encrypt 使用)
SSL 証明書を取得した後:
<VirtualHost *:443>
ServerName yourdomain.com
ServerAlias www.yourdomain.com
DocumentRoot /var/www/feedbackpulse-saas/public
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem
<Directory /var/www/feedbackpulse-saas/public>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# セキュリティヘッダー
Header always set X-Frame-Options "SAMEORIGIN"
Header always set X-Content-Type-Options "nosniff"
Header always set X-XSS-Protection "1; mode=block"
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
ErrorLog ${APACHE_LOG_DIR}/feedbackpulse-ssl-error.log
CustomLog ${APACHE_LOG_DIR}/feedbackpulse-ssl-access.log combined
</VirtualHost>
# HTTP を HTTPS にリダイレクト
<VirtualHost *:80>
ServerName yourdomain.com
ServerAlias www.yourdomain.com
Redirect permanent / https://yourdomain.com/
</VirtualHost>
ワイルドカードサブドメインサポート(オプション)
acme.yourdomain.com のようなテナントサブドメインを使用する場合:
<VirtualHost *:443>
ServerName yourdomain.com
ServerAlias *.yourdomain.com
DocumentRoot /var/www/feedbackpulse-saas/public
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/yourdomain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/yourdomain.com/privkey.pem
<Directory /var/www/feedbackpulse-saas/public>
Options -Indexes +FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
重要: ワイルドカード DNS レコード(
*.yourdomain.com)とワイルドカード SSL 証明書も必要です。詳しくは ワイルドカード DNS セットアップ と SSL 証明書 を参照してください。
.htaccess ファイル
FeedbackPulse には public/ ディレクトリに .htaccess ファイルが含まれています。このファイルは以下を処理します:
- URL の書き換え(
index.phpなしのきれいな URL) - HTTPS の強制
- セキュリティヘッダーの設定
.htaccess が機能しない場合は、バーチャルホスト設定で AllowOverride All が設定されていることを確認してください。
デフォルトの .htaccess には以下が含まれます:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
public/.htaccess には以下が含まれます:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
cPanel / 共有ホスティング
cPanel の共有ホスティングを使用している場合:
オプション A:public_html にインストール
- すべてのファイルを
public_html/feedbackpulse/にアップロードします - cPanel → Domains または Addon Domains で、ドキュメントルートを
public_html/feedbackpulse/publicに設定します - ドキュメントルートを変更できない場合は、以下の方法を使用してください:
public_html/ ルートに .htaccess を作成します:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ feedbackpulse/public/$1 [L]
</IfModule>
オプション B:サブドメインにインストール
- cPanel でサブドメインを作成します(例:
feedback.yourdomain.com) - ドキュメントルートを
public/フォルダーに設定します - サブドメインディレクトリにすべての FeedbackPulse ファイルをアップロードします
オプション C:public/ の内容を移動
制限の多いホスティングでの最終手段として:
- すべてのファイルを
public_html/外のディレクトリにアップロードします(例:/home/user/feedbackpulse/) public/の内容をpublic_html/にコピーしますpublic_html/index.phpを編集してパスを更新します:
// 変更前:
require __DIR__.'/../vendor/autoload.php';
// 変更後:
require '/home/user/feedbackpulse/vendor/autoload.php';
// 変更前:
$app = require_once __DIR__.'/../bootstrap/app.php';
// 変更後:
$app = require_once '/home/user/feedbackpulse/bootstrap/app.php';
警告: オプション C はアップデートのたびにパスの更新が必要です。可能であればオプション A または B を使用してください。
Laragon(Windows ローカル開発)
Laragon を使用すると非常に簡単に設定できます:
feedbackpulse-saasフォルダーをC:\laragon\www\に配置します- Laragon が自動的にバーチャルホストを作成します:
feedbackpulse-saas.test - ブラウザで
http://feedbackpulse-saas.testにアクセスします - Laragon が自動的に
public/を指定します!
Laragon の自動バーチャルホスト: Laragon は
www/内のすべてのフォルダーに Apache バーチャルホストを作成します。そのディレクトリにpublic/が存在する場合、ドキュメントルートは自動的にpublic/に設定されます。
Apache 設定の確認
# 設定構文のテスト
sudo apachectl configtest
# mod_rewrite が有効か確認
apache2ctl -M | grep rewrite
# サイトが有効か確認
ls /etc/apache2/sites-enabled/
# Apache を再起動
sudo systemctl restart apache2
https://yourdomain.com にアクセスして、FeedbackPulse のランディングページまたはインストーラーが表示されることを確認してください。
次のステップ
- SSL 証明書 — HTTPS のセットアップ
- ワイルドカード DNS セットアップ — テナントサブドメインの有効化
- Web インストーラーウォークスルー — インストーラーの実行