メンテナンスとヘルスチェック
ヘルスチェック、データのパージ、疑似 cron スケジューラー、そして PHP バージョンガードについて解説します。
チューブサイトは常に変化し続けます。PHPのバージョンが変わり、ディスクがいっぱいになり、キャッシュが古くなり、ローンチ前にテストデータが積み重なっていきます。TubePressは、シェルアクセスなしにサーバーの状態を確認し、安全にクリーンアップできる単一のメンテナンスタブを提供します。
このページでは、組み込みのヘルスチェック、一括パージツール、定期作業を実行するスケジューラー、バージョン不一致のサーバーが白画面になるのを防ぐPHPバージョンガード、そしてデータベースをスリムに保つためのいくつかの習慣について説明します。
ヘルスチェック
/admin/settingsを開き、メンテナンスタブを選択してヘルスチェックを実行します。サーバーに関するさまざまな項目を検査し、カテゴリーごとにグループ化して表示します。各行には現在の値、推奨値、そして問題がある場合はその修正コマンド(コピー&ペースト可能)が表示されます。上部のバナーにはすべてのシステムが正常、推奨事項あり、または問題が見つかりましたのいずれかで状態が要約されます。
各チェックは以下の3つのうちのいずれかの状態です:
レポートされるカテゴリーには以下が含まれます:
- PHP & PHP拡張機能 — PHPバージョンと拡張機能の一覧(必須:
pdo_mysql、mbstring、json、curl;推奨:fileinfo、intl、zip、zlib、gd、openssl、ftp)。各拡張機能には対応する機能の注釈が付いています。 - PHP設定 —
memory_limit、max_execution_time、upload_max_filesize、post_max_size、max_input_vars、allow_url_fopen、file_uploads。 - パーミッション —
storage/とpublic/uploads/が書き込み可能であること(インポート、バックアップ、テーマエディター用のオプションディレクトリも含む)。 - データベース — 接続、MySQLバージョン、
utf8mb4文字セット。 - セキュリティ — HTTPS、
display_errors、expose_php。 - パフォーマンス、システムツール & ディスクスペース — OPcache、PHP CLIバイナリ、FFmpeg/FFprobe、ダウンロードキューワーカー、アップロードボリュームの空きディスク容量。
intlなどの拡張機能の見落としを発見する最も迅速な方法です。パージ & クリーンアップ
メンテナンスタブのパージセクションは、データのカテゴリー全体を永続的に一括削除するための危険ゾーンです。削除したいデータタイプにチェックを入れ、DELETEと入力して確認すると削除されます。以下のいずれかをクリアできます:
- 動画(コメント、いいね、お気に入り、履歴を含む)、カテゴリー、タグ、ポルノスター、チャンネル
- コメント、ページ、インポートジョブ(インポートされた動画自体は保持されます)
- ユーザー — 非管理者アカウントのみ;管理者アカウントは常に保持されます
削除はシングルフライトロックのもとで小さいサーバー負荷に収まるチャンクで実行されるため、数百万行のカタログでもリクエストのタイムアウトやライブサイトのブロックなしにクリアできます。ローンチ前にシードやデモコンテンツを消去する最速の方法です。
疑似 cron
ランキングの再計算、トランスコードジョブの実行、インポートの実行、サイトマップの更新、後処理のクリーンアップなどの定期作業は、システムの crontab を必要としない組み込みスケジューラーによって処理されます。ページレンダリング時に動作し、軽量なハートビートによって維持されるため、共有ホスティングでもスケジュールされたタスクが自動的に実行されます。
上級ホスト向けのオプションCLIスクリプトを含む詳細については、Cron & CLIページをご覧ください。
PHPバージョンガード
TubePressにはPHP 8.2以降が必要です。バージョン不一致を致命的なエラーではなくわかりやすいメッセージとして表示するため、小さなガードがアプリケーションの起動前にすべてのエントリーポイントで実行されます。これは意図的にPHP 5互換の古い構文で書かれているため、あらゆるPHPバージョンでパースされます — つまり、古すぎるPHPが実行されているサーバーでは、生のパースエラーや真っ白な画面の代わりに、「PHPのアップグレードが必要です」というきれいなページ(HTTP 500とRetry-Afterヒント付き)が表示されます。コマンドラインでは同じメッセージが標準エラーに出力されます。
データベースを整理しておく
ちょっとした定期メンテナンスで、クエリを高速に保ちバックアップを小さく抑えられます:
- 一括変更前にバックアップを取ること。パージ、インポート、アップデートはいずれも最新のバックアップがあればより安全です。
- ローンチ前にパージツールでテストデータをクリアして、ライブカタログをきれいな状態で開始してください。
- ハウスキーピングはスケジューラーに任せましょう。定期クリーンアップは疑似 cron を通じて自動的に実行されます — ログやキャッシュを手動でプルーニングする必要はありません。
- 文字セットを
utf8mb4に保ちましょう(ヘルスチェックで確認されます)、すべての言語と絵文字が正しく保存されます。
次のステップ