“500 internal server error” が表示されたとき 【Linux】

Linux

Linux サーバで .htaccess ファイルを編集していて “500 internal server error” が表示されたときの対処方法についてまとめておきます。

背景

VPS サーバをレンタルし、WordPress でホームページを作成しています。
Linux 上で、.htaccess を編集し、ブラウザからサイトにアクセスしたところ、500 エラーが出てサイトがうまく表示されなくなりました。
修復するには編集箇所を元に戻していくという、ある意味、あたり前のアプローチをすることになりますが、サーバの挙動がどうなるかも含め、ポイントをまとめ公開しておきます。

環境: レンタルサーバ(ConoHa VPS)、CentOS 8.0、WordPress

現象

Web サーバの運用を開始したところ、海外などからの異常なアクセスが常時あります。
こうした異常なアクセスを制限するため、定期的なメンテナンスで、.htaccess を修正してサーバ上で保存しました。
サイトにアクセスしてみたところ以下のエラーが表示され、サイトが正常に表示できなくなりました。

ブラウザのタブの表示
“500 internal server error”

エラーの詳細 

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator at root@localhost to inform them of the time this error occurred, and the actions you performed just before this error.
More information about this error may be available in the server error log.

対処方法

サーバの動作を確認しながら .htaccess の修正箇所を戻していく、というアプローチになります。

手順
① サーバのコンソールを表示させる。
② ルートフォルダに移動する。
例: ”cd /var/www/html/”
③ vi .htaccess を実行し、編集状態とする。
④ .htaccess の記載を修正して保存する。
・ 例えば、修正箇所を一部、もとに戻してみる。
⑤ Apache を再起動する。
# systemctl restart httpd
# systemctl status httpd
→ ”httpd.service … Active: active (running) 等と表示される。
→ ”q” と入力して終了する。
⑥ この状態で、もう一度、ブラウザからサイトにアクセスしてみてください。
サイトがうまく表示されたら完了です!

うまく表示されない場合、③~④で、.htaccess をさらに修正し、修正箇所をすべてもとに戻していきます。(問題個所を特定していきます。)

※ 私が経験した事例では、④で一度、保存しなおしてみたところ、復旧しました。

まとめ

.htaccess を編集していて 500 エラーが出たときの対処方法をまとめました。
サーバを運用しているといろいろなエラーに遭遇します。
具体的にどういったエラー文字が表示されるか、その場合どうすべきかなど、明確にまとめられたサイトが少ないようです。当たり前のような事項ですが、サーバの動きも含め、ポイントを整理し、公開しておきます。

Web サーバの運用にあたり、他にも基本的なコマンドや遭遇したエラー表示などをまとめています。
もしも関心のある方がいらっしゃったら参考にしてみてください。

関連リンク
・ アップグレード後に 500 エラーが出たとき 【Linux】
・ “Error establishing a database connection” が表示されたとき【Linux】
・ Webサーバのアクセスログの確認方法 【Linux】

タイトルとURLをコピーしました