Copicode 日本語トップ

ロリポップで.htaccess編集後に500エラーになった時の確認順番

.htaccess をアップロードした直後に 500 Internal Server Error になったら、まずPHPやCSSを疑うより、直前の .htaccess を戻します。サイト全体が見えなくなるので焦りますが、原因が.htaccessなら復旧はかなり単純です。

確認日と対象

確認日: 2026年5月16日。ロリポップで自作HTML/PHPサイトの .htaccess をFTPまたはSFTPで編集した直後に、500 Internal Server Error が出た人向けです。

WordPressプラグイン固有の設定、大規模なApache設定、サーバー障害そのものは対象外です。まず直前に触った .htaccess を退避して、表示が戻るかを見ます。

このページで整理できること

  • .htaccess が原因の500か、PHP側の500かを最初に分ける
  • 削除ではなく別名退避で、元に戻せる形を残す
  • バックアップとの差分、追加した行、全角スペース、不可視文字を確認する
  • リダイレクト、SSL化、www統一、Basic認証、エラーページ設定を一度に直さない
  • Search Consoleの5xxとして見えている時に、先に公開URLを確認する
  • AIやサーバー会社へ相談する時に、伏せる情報と伝える情報を分ける

復旧順の全体像

最初に削除せず、別名にして退避します。表示が戻るか確認してから、バックアップや最小構成へ戻します。

.htaccessで500エラーになった時に削除せず別名退避し、表示確認、バックアップ復元、小さく戻す順番を示す図解

最初にやることは別名にすること

FTPソフトでサーバー上の .htaccess を別名に変更します。削除する前に名前を変えるだけなら、後で中身を確認できます。

.htaccess
.htaccess.error-backup

これでトップページが表示されるなら、500エラーの原因は.htaccessにあります。

500になった時に最初に分けること

500エラーは画面だけでは原因が分かりません。直前に .htaccess を触ったか、PHPを触ったか、サーバー側で広く起きているかを先に分けます。

状態先に見る場所次の行動
.htaccess 編集直後にサイト全体が500 サーバー上の .htaccess 削除せず、別名にして表示が戻るか確認します。
PHPページだけ500、HTMLは表示される PHP構文、include、エラーログ .htaccess だけでなくPHP側のエラーを確認します。
リダイレクト設定後に500またはループ RewriteRuleRedirect、転送先URL https化、www統一、旧URL転送を1つずつ分けて戻します。
Search Consoleで5xxが出ている 公開URL、発生日時、直前のアップロード、URL検査 今も500か、過去の一時的な失敗かを分けます。

実際に見る順番

500エラーは画面だけでは原因が分かりません。直前に .htaccess を触ったなら、次の順番で切り分けます。

順番見る場所分かること
1直前にアップロードした .htaccess原因候補を1ファイルに絞れるか
2サーバー上のファイル名.htaccess が効いている場所か
3別名退避後の表示.htaccessが原因か、PHPなど別原因か
4バックアップとの差分どの行を足して500になったか
5RewriteRuleRedirectリダイレクト記述のミスや無限転送
6全角スペース、不可視文字コピペで混ざった文字の影響
7PHPエラーログ.htaccessではなくPHP側の500か

バックアップを戻す

編集前に保存していたバックアップがある場合は、それを .htaccess に戻します。バックアップがない場合は、最小構成から1つずつ戻します。

RewriteEngine On

ここからリダイレクトや404設定を1ブロックずつ追加し、どこで500になるか確認します。

ロリポップでよくある原因

原因確認すること
使えないディレクティブサーバーで許可されていない設定を書いていないか
全角スペースや不可視文字コピーしたコードに余計な文字が入っていないか
RewriteRuleの書き間違い条件式と転送先URLを1行ずつ確認
置き場所の間違いサイト全体に効くルートへ置いていないか

リダイレクトは小さく試す

httpからhttps、www統一、古いURLの301を一度に入れると、どれが原因かわからなくなります。最初は1つだけ入れて確認します。

Redirect 301 /old-page.php /new-page.php

復旧後に確認するページ

AIに相談する時のメモ

AIに相談する時は、500になった直前の変更と、退避した結果を書きます。FTPパス、ログイン情報、Basic認証のパスワードは貼らないでください。

自分で文章化しにくい時は、サーバー会社・制作会社への問い合わせ文メーカーロリポップ問い合わせ文メーカーで、URL、症状、直前の作業、確認済み項目を整理できます。

ロリポップで.htaccessを編集した後に500 Internal Server Errorになりました。

500になるURL:

直前に変更した.htaccessの目的:
例: https化 / www統一 / 旧URLからリダイレクト / Basic認証 / 404ページ設定

追加または変更した.htaccessの該当部分:

.htaccessを別名にした結果:
例: 表示が戻った / まだ500のまま

バックアップとの差分:

PHPページだけか、HTMLページも500か:

確認したこと:
- .htaccessの置き場所:
- 全角スペース:
- RewriteRule:
- Redirect:
- PHPエラーログ:
- バックアップ:

ログイン情報、FTPパスワード、Basic認証パスワードは伏せています。
初心者向けに、次に見る順番を教えてください。

公式情報で確認するところ

確認したいこと公式情報この記事での使い方
.htaccessの役割と編集方法 ロリポップ公式 .htaccessの利用方法 .htaccess の基本、編集方法、ファイル名の考え方を確認します。
500 Errorの原因候補 ロリポップ公式 500 Error .htaccess の記述問題、PHP設定、エラーログ確認の根拠にします。
エラーページ設定と500 Internal Error ロリポップ公式 エラーページの変更 .htaccess の記述ミスで500が出る場合の確認に使います。

Search Consoleで5xxが出た時の見方

Search Consoleでサーバーエラー(5xx)が出ている時は、まず対象URLを通常ブラウザで開きます。今も500なら、Search Consoleより先に公開URLの復旧を優先します。

すでに表示が戻っている場合は、発生日時、直前にアップロードした .htaccess、PHP変更、サーバー側の一時的なエラーを分けて、URL検査や再クロールを待つか判断します。

状態見ること進むページ
今も500が出る .htaccess 退避、PHPエラーログ、直前の変更 Web公開トラブル症状別レスキュー
Search Consoleだけに5xx履歴が残る 発生日時、URL検査、現在のHTTPステータス Search Consoleでサーバーエラー(5xx)が出た時の確認順
リダイレクト設定後にエラーが増えた 301、https化、www統一、転送ループ Search Consoleでリダイレクト エラーが出た時の確認順

関連記事