さくらのレンタルサーバで.htaccessが原因で500エラーになってしまう場合のチェックリスト
さくらのレンタルサーバを使ったときに、.htaccess
がうまく動かず500エラーが出てきました。
いろいろ原因を探ったところ、文字コードが原因だと分かりました。
他のレンタルサーバだとあまり意識したことがなかったので焦りましたが、今後同じようなことが起きたときのためにチェックしたポイントをまとめておきます。
チェックすること
1. htaccessの中身が正しいか確認
まず、.htaccessの中身が間違っていると、動かないのは当然なので、内容が合っているかどうか確認しましょう。
自分の場合、別のレンタルサーバーでは動いたはずのコードがさくらのレンタルサーバーでは動かなかったので、中のコードが間違っているわけではないと判断できました。
構文エラーがないかどうかチェックしてくれるサイトもあるので、1度確認しておきましょう。
2. htaccessの文字コードと改行コードの確認
多くのテキストエディタで、現在改行コードは「UTF-8」がデフォルトです。
さくらのレンタルサーバーでも「UTF-8」または「EUC-JP」であれば問題ないとのことだったので、いつも通りUTF-8で作っていたら500エラーになりました。
設定項目 | 設定内容 |
---|---|
文字コード | UTF-8またはEUC-JP |
改行コード | LF |
EUC-JPに変えて再度アップしたところ、動くようになったので、他にいろいろ試したけど解消されない方は度試してみるとよさそうです。
文字コードや改行コードは、テキストエディタごとに設定場所が異なりますが、Visual Studio Codeの場合は右下に表示されているので、クリックして変更できます。
3. パーミッションの確認
他にも.htaccess
のパーミッションは「644」である必要があります。
ファイル | パーミッション |
---|---|
.htaccess | 644 |
実行ファイル | 755または705 |
PHPやCGIなどの実行ファイルの場合は「755」か「705」にする必要があるみたいです。
Transmitであれば、インスペクタの下の方に表示されます。
「グループ」と「その他」の書きがオフになっていて、それ以外が許可されている状態であればOK。
そうなっていない場合は、上のボタンをクリックして切り替えて「適用」をクリックすれば変更できます。