ESC

Start typing to search across invoices, services, domains, tickets, and more...

Search... Ctrl+K
aaPanel(宝塔)

aaPanel/宝塔パネルのよくあるトラブル解決:開けない、502/504、ディスク満杯、パスワード忘れ

7 ステップ 9 分で読めます 4 回閲覧 0
目次

aaPanel/宝塔パネルで特に多いトラブルは、パネルが開けない、PHP サイトの 502/504 エラー、ディスク満杯、パネルのパスワード忘れです。この記事では Debian/Ubuntu、CentOS/Rocky/AlmaLinux 上の宝塔 Linux パネルを対象に、症状ごとの確認コマンドと対処法をまとめます。ほとんどの作業は SSH で行います。接続方法は「SSH ログイン」記事をご覧ください。

ステップ1:宝塔パネルが開けない — 正しいパネル URL を確認する

最近のバージョンでは、インストール時にランダムなポートと「安全入口」パスが生成されるため、IP:8888 に直接アクセスしてもエラーになることがよくあります。SSH でログインして bt default を実行するか、bt でメニューを開いて 14(パネルの既定情報を表示)を選ぶと、完全な URL、ポート、既定アカウントが表示されます。パネル自体が停止している場合は bt restart で再起動します。

# Show panel URL (with security entry), port and default account
bt default
# or open the menu and choose 14 (view panel default info)
bt

# Restart the panel service
bt restart
bt メニューの番号はバージョンにより多少異なる場合があります。bt 実行後に表示される説明を必ず確認してください。安全入口を忘れた場合も、メニュー内の安全入口変更の項目から再設定できます。

ステップ2:パネルのポート、OS ファイアウォール、セキュリティポリシーを確認する

URL が正しいのにアクセスできない場合、多くはポートが遮断されています。パネルが待ち受けているポートを確認し、OS のファイアウォールで許可します(例は 8888、ご自身のポートに置き換えてください)。サーバーの前段に別のネットワーク保護やセキュリティポリシーを設定している場合は、そちらでも許可が必要です。手元のネットワークが特殊なポートを遮断していないか、スマートフォンのテザリングでも試してください。

# Which port is the panel listening on?
cat /www/server/panel/data/port.pl
ss -lntp | grep -E "BT-Panel|python"

# Debian / Ubuntu (ufw)
ufw allow 8888/tcp && ufw status
# CentOS / Rocky / AlmaLinux (firewalld)
firewall-cmd --permanent --add-port=8888/tcp && firewall-cmd --reload

ステップ3:宝塔パネルのパスワードやユーザー名を忘れた場合

SSH でログインして bt を実行し、5 でパネルのパスワード、6 でユーザー名を変更します。新しい値を入力すれば即座に反映されます。変更したポートも忘れた場合は、8 で新しいパネルポートを設定し、ファイアウォールでも許可してください。

bt
# 5  -> change panel password
# 6  -> change panel username
# 8  -> change panel port
パネルのパスワードは 12 文字以上の強力なものにし、安全入口とアクセス制限を有効にしておきましょう。「宝塔パネルのセキュリティ設定」記事も参照してください。

ステップ4:PHP サイトで 502 Bad Gateway が出る

502 は Nginx が PHP-FPM から応答を受け取れない状態で、PHP-FPM のクラッシュ、未起動、ワーカー不足が主な原因です。プロセスと sock ファイルを確認し、該当バージョンの PHP を再起動して、サイトのエラーログと PHP-FPM ログを確認します。「server reached pm.max_children」が頻繁に出る場合は、パネルの PHP 設定のパフォーマンス調整で子プロセス数を増やします(メモリ量に注意)。

# Is PHP-FPM running? (74 = PHP 7.4, adjust to your version)
ps aux | grep php-fpm | head
ls -l /tmp/php-cgi-74.sock
/etc/init.d/php-fpm-74 restart

# Read the logs
tail -n 50 /www/wwwlogs/example.com.error.log
tail -n 50 /www/server/php/74/var/log/php-fpm.log
tail -n 50 /www/server/php/74/var/log/slow.log

ステップ5:PHP サイトで 504 Gateway Timeout が出る

504 は PHP の処理が Nginx の待ち時間を超えた状態で、大きなデータのインポート、クローラースクリプト、遅い SQL などで起こります。まず slow.log や MySQL のスロークエリログで原因を特定します。長時間の処理がどうしても必要なら、サイトの Nginx 設定で FastCGI のタイムアウトを延ばし、php.ini の max_execution_time も合わせて引き上げます。

# Inside the site's Nginx config (location ~ \.php$ or server block)
fastcgi_connect_timeout 60s;
fastcgi_send_timeout    300s;
fastcgi_read_timeout    300s;

ステップ6:設定変更後は nginx -t でテストする

サイト設定、リライト、SSL を手動で編集した後に Nginx が起動しない、全サイトが開けないという場合は、まず構文をテストします。nginx -t がエラーのファイルと行番号を示すので、修正してから reload します。80/443 番ポートが使用中と表示されたら、ss で占有しているプログラムを確認します。

/www/server/nginx/sbin/nginx -t
/etc/init.d/nginx reload

# Debian / Ubuntu / CentOS: see what holds port 80/443
ss -lntp | grep -E ":80 |:443 "

ステップ7:ディスク満杯でパネルやサイトが異常になる

ディスクがいっぱいになると、パネルにログインできない、MySQL が停止する、サイトがエラーになるといった連鎖的な障害が起きます。以下で容量の大きいディレクトリを特定します。多いのは /www/wwwlogs のログ、/www/backup のローカルバックアップ、MySQL のバイナリログです。書き込み中のログは削除せず truncate で空にします。df -i で inode の枯渇(小さなファイルやセッションファイルの大量発生)も確認しましょう。詳しくは「ディスク容量不足の対処」記事をご覧ください。

df -h
df -i
du -h --max-depth=1 /www 2>/dev/null | sort -h | tail -n 15
du -sh /www/wwwlogs /www/backup /www/server/data 2>/dev/null

# Empty (not delete) a huge log that is still open
truncate -s 0 /www/wwwlogs/example.com.log

# Purge old MySQL binary logs (run in mysql -uroot -p)
PURGE BINARY LOGS BEFORE NOW() - INTERVAL 3 DAY;

よくある質問

bt コマンドが「command not found」になります。

/etc/init.d/bt default や /etc/init.d/bt restart を代わりに使ってください。このファイルもない場合はパネルが破損しているため、データをバックアップしたうえで公式スクリプトで修復または再インストールします。

PHP を再起動してもすぐに 502 が再発します。

メモリ不足や子プロセス数の設定過多でプロセスが強制終了されている可能性が高いです。free -m と dmesg の OOM 記録を確認し、子プロセス数を減らすか Swap を追加(「Linux の Swap 追加」記事参照)、必要に応じてプランを上げてください。

パネルは開くが「IP 制限」や「ドメイン制限」と表示されます。

以前に許可 IP やドメインのバインドを設定しています。bt メニューの IP アクセス制限解除、またはドメインバインド解除の項目を選んでください。

上記の手順で解決しない場合は、サポートチケットから IMIDC の 24 時間 365 日対応テクニカルサポートへお問い合わせください。サーバー IP、OS のバージョン、実行したコマンド、エラー画面のスクリーンショットを添えていただくと、より早く原因を特定できます。

この回答はお役に立ちましたか?

関連チュートリアル