さくらのレンタルサーバで.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。

そうなっていない場合は、上のボタンをクリックして切り替えて「適用」をクリックすれば変更できます。

サイトのPocketに保存された回数や、あとで読まれた回数まで解析できるPocketのパブリッシャーツールの登録方法
gulpでSSI(サーバーサイドインクルード)を使用する「connect-ssi」
「Dart Sass」「LibSass」「Ruby Sass」などSassの種類や記法に関するまとめ
Visual Studio CodeからFTPソフトのTransmitを使用する拡張機能「Transmit」
アクセス解析ツールの定番!!Googleアナリティクスの登録方法
EmmetのWrap with Abbreviationで複数行のマークアップを効率的に行う
Mac向けのミニマルでお洒落なデザインのGitクライアント「Gitfox」
gulp 4.0から新しく加わったseriesとparallelについての備忘録
Visual Studio Codeのエクスプローラー上でファイル・フォルダの複製ができるようになる拡張機能「Duplicate action」
ソースコードをハイライトする軽量ライブラリ「Highlight.js」の導入方法と使い方
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
AirPodsで片耳を外しても再生が止まらないようにする方法
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け
Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う
AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」
Gitで1行しか変更していないはずのに全行変更した判定になってしまう
Macでアプリごとに音量を調節できるアプリ「Background Music」
Macのターミナルでパスワード付きのZIPファイルを作成する方法
MacBook Proでディスプレイのサイズ調整をして作業スペースを広げる
SteerMouseの「自動移動」機能で保存ダイアログが表示されたら自動でデフォルトボタンへカーソルを移動させる
iPhoneでタッチが一切効かなくなった場合に強制再起動する方法