Seo Panel を Ubuntu 18.04 にインストールする

概要
Seo Panel はウェブサイトの検索エンジン最適化(SEO)を管理するための無料オープンソースのコントロールパネルです。サイト監査、メタタグ生成、バックリンクチェック、キーワード位置チェックなどのツールを備えており、30言語以上をサポートします。自動ディレクトリ送信機能により、有料・無料のインターネットディレクトリへサイト登録することも可能です。
重要: 本手順は Ubuntu 18.04 向けです。より新しい Ubuntu や PHP バージョンを使う場合は「互換性と移行」の節を参照してください。
主な機能
- サイトオーディタとウェブマスターツール
- メタタグジェネレータ、バックリンクチェッカー
- 30言語をサポート
- キーワードポジションチェック、MOZランクチェック、検索エンジン飽和度チェック
前提条件
- Ubuntu 18.04 を実行するサーバー
- sudo 権限を持つ非rootユーザー
- 公開用ドメイン(例: example.com)またはテスト用ホスト名
手順の全体像(ミニメソッド)
- システムを最新化する
- Apache、MariaDB、PHP と必要なモジュールをインストールする
- php.ini を調整する(メモリ・アップロード・タイムアウト・タイムゾーン)
- MariaDB を保護し、Seo Panel 用データベースとユーザーを作成する
- Seo Panel をダウンロードして Apache のドキュメントルートに配置する
- Apache の仮想ホストを作成してサイトを有効化する
- Web インストーラでインストールを完了する
システム更新
最初にパッケージリストを更新し、システムをアップグレードします。
sudo apt-get update -y
sudo apt-get upgrade -y
更新後は必要に応じて再起動してください。
Apache、MariaDB、PHP のインストール
必要なパッケージを一括でインストールします(元記事のコマンドをそのまま利用):
sudo apt-get install apache2 mariadb-server php7.2 php7.2-mysql php7.2-curl php7.2-json php7.2-cgi libapache2-mod-php7.2 php7.2-xmlrpc php7.2-gd php7.2-mbstring php7.2 php7.2-common php7.2-xmlrpc php7.2-soap php7.2-xml php7.2-intl php7.2-cli php7.2-ldap php7.2-zip php7.2-readline php7.2-imap php7.2-tidy php7.2-recode php7.2-sq php7.2-intl unzip wget -y
注記: Ubuntu 18.04 の標準 PHP は 7.2 系です。将来的に PHP の新しいバージョンに移行する場合は互換性を確認してください(「互換性と移行」参照)。
インストール後、php.ini を編集して推奨値を設定します。
sudo nano /etc/php/7.2/apache2/php.ini
php.ini 内の設定例(元の手順):
memory_limit = 300M
upload_max_filesize = 200M
max_execution_time = 400
date.timezone = Asia/Kolkata
重要: タイムゾーンはサーバーのロケーションに合わせて設定してください。日本国内向けであれば次のように変更します。
date.timezone = Asia/Tokyo
保存して閉じたら Apache と MariaDB を再起動し、起動時に自動開始するよう有効化します。
sudo systemctl restart apache2
sudo systemctl restart mariadb
sudo systemctl enable apache2
sudo systemctl enable mariadb
MariaDB の初期保護とデータベース作成
MariaDB はデフォルトで十分に保護されていないため、まずセキュリティ強化スクリプトを実行します。
sudo mysql_secure_installation
このウィザードでは root パスワード設定、匿名ユーザー削除、リモート root ログイン禁止、test データベース削除などを行います。対話例(表示されるプロンプト):
Enter current password for root (enter for none):
Set root password? [Y/n]: N
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
ウィザード完了後、MariaDB に root でログインして Seo Panel 用のデータベースと専用ユーザーを作成します。
mysql -u root -p
ログイン後の SQL 例:
MariaDB [(none)]> CREATE DATABASE seopaneldb;
MariaDB [(none)]> CREATE USER seopanel;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON seopaneldb.* TO 'seopanel'@'localhost' IDENTIFIED BY 'mypassword';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> exit
注意: ‘mypassword’ は強力なパスワードに置き換えてください。パスワード管理ツールの使用を推奨します。
Seo Panel のダウンロードと配置
最新バージョンをダウンロードして展開し、Apache のドキュメントルートに配置します。
wget https://excellmedia.dl.sourceforge.net/project/seopanel/Seopanel.v3/seopanel.v.3.16.0.zip
unzip seopanel.v.3.16.0.zip
sudo cp -r seopanel /var/www/html/
ファイルパーミッションを適切に設定します。
sudo chown -R www-data:www-data /var/www/html/seopanel
sudo chmod -R 755 /var/www/html/seopanel
Apache の仮想ホスト設定
Seo Panel 用の仮想ホストを作成します。
sudo nano /etc/apache2/sites-available/seopanel.conf
ファイルに以下を追加します(example.com を実際のドメインに置き換えてください)。
ServerAdmin [email protected]
DocumentRoot /var/www/html/seopanel
ServerName example.com
Options FollowSymlinks
AllowOverride All
Require all granted
ErrorLog ${APACHE_LOG_DIR}/seopanel_error.log
CustomLog ${APACHE_LOG_DIR}/seopanel_access.log combined
保存後、サイトを有効化して rewrite モジュールを有効にし、Apache を再起動します。
sudo a2ensite seopanel
sudo a2enmod rewrite
sudo systemctl restart apache2
重要: 本番運用では HTTPS 化を必須としてください。Let’s Encrypt 等で TLS を導入してください。
Web インストーラでのセットアップ
ブラウザでサイトの URL(例: http://example.com)にアクセスします。必要な互換性チェックが表示されます。
(画像: Seo Panel の互換性チェック画面。この画面で必要な PHP モジュールやファイルパーミッションを確認します。)
要件が満たされれば「Proceed to the next step」をクリックし、データベース接続情報を入力します。
(画像: データベース名、ユーザー名、パスワードを入力する画面。)
設定が正常に完了すると管理者アカウント作成画面に進みます。
インストール完了後、デフォルトのダッシュボードが表示されます。
(画像: インストール直後の Seo Panel 管理画面のスクリーンショット。ダッシュボードから各種ツールにアクセスできます。)
動作確認と基本テストケース
インストール後に実施すべき簡単なテスト:
- Web インターフェースにログインできるか
- サイト監査ツールが実行できるか(軽い監査でエラーが出ないか)
- バックアップとリストア手順が動作するか(小さなテストDBで検証)
- メール通知(パスワードリセット等)が送信されるか
受け入れ基準(Критерии приёмки):
- 管理者ユーザーでログインできる
- 基本レポートを生成できる
- すべての主要ページで 200 応答が返る
- データベース接続が安定している
トラブルシューティングとよくある問題
- 500 エラーや PHP エラーが出る: /var/log/apache2/seopanel_error.log を確認し、必要な PHP 拡張がインストールされているか確認する。
- ファイルパーミッション関連の問題: seopanel ディレクトリの所有者を www-data に設定しているか再確認する。
- データベース接続エラー: ユーザー名・パスワード、ホストが正しいか、GRANT 文で localhost の指定が合っているか確認する。
- PHP バージョンの互換性: プラグインやコアが PHP7.2 以外を要求する場合、動作しないことがある。互換性を確認してから PHP を更新する。
セキュリティ強化と運用上の注意点
- HTTPS を必須化する(Let’s Encrypt を推奨)
- MariaDB の root アクセスはローカルに限定し、強力なパスワードを使用する
- 管理者アカウントには複雑なパスワードと可能なら二要素認証を設定する
- 定期的にバックアップを取得する(ファイルとデータベース双方)
- 公開ディレクトリに不要なファイルがないか監査する
互換性と移行のヒント
- Ubuntu 18.04 は古いプラットフォームです。Ubuntu 20.04 / 22.04 では PHP のデフォルトが異なります。移行する際は PHP モジュールの互換性(特に xmlrpc、mbstring、intl など)を確認してください。
- Seo Panel の最新版が古い PHP を前提としている場合、新しい PHP に対応するパッチやフォークが無いかコミュニティを確認してください。
運用チェックリスト(ロール別)
管理者向け(システム管理):
- サーバー OS とパッケージの定期更新(apt upgrade)
- 自動バックアップのスケジュール設定
- TLS 証明書の自動更新設定
SEO 担当者向け:
- キーワード位置の定期チェックの設定
- サイト監査レポートのスケジュール化
- バックリンクのモニタリング
開発/運用(DevOps):
- ログの収集と監視(fail2ban、Prometheus/ELK 等と連携)
- 障害発生時のロールバック計画(ファイルと DB のスナップショット)
既知の失敗ケースと回避策
- PHP 拡張が足りない: 必要な拡張を調べて apt で追加インストール
- ファイル所有権の誤設定: chown コマンドで www-data に修正
- データベース権限不足: GRANT 文を実行し FLUSH PRIVILEGES する
アップグレードとロールバックの簡易手順(インシデント用)
- 変更前にファイルと DB の完全バックアップを取得
- 変更(例: PHP バージョンアップ)をテスト環境で検証
- 本番適用中に障害が発生したら、バックアップから迅速にロールバック
- ロールバック後にログを解析して根本原因を特定
1行用語集
- Apache: Web サーバー
- MariaDB: MySQL 互換のデータベース管理システム
- php.ini: PHP の設定ファイル
- VirtualHost: Apache の仮想ホスト設定
まとめ
このガイドでは、Ubuntu 18.04 上に Seo Panel をインストールするための手順と運用上の注意点、トラブルシューティング、セキュリティ強化、移行ヒントを提供しました。インストール後は必ず HTTPS を有効化し、定期バックアップと監視を行ってください。ご不明点があれば、インストールログやエラーログの内容を添えて質問してください。
重要: 本手順で使用しているコマンドや設定は 2020 年代中盤時点の一般的な手順に基づいています。最新のパッケージ状況やセキュリティ勧告を確認してから運用してください。