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

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

CSSでclassがついていないタグにだけスタイルを当てる方法
pointer-eventsプロパティでクリックイベントを無効化にする|気になるCSSプロパティ
属性・Class・IdなどHTMLタグの細かい部分を見ていこう!!
Webサイト制作の基礎の基礎、HTMLって何?
Visual Studio CodeでCSVの編集を見やすく行う拡張機能「Edit csv」
CodeAnywhereでターミナルに触る練習をする
Google Maps APIをローカル開発環境で使用するときの制限設定方法
Webデザイナーを目指す専門学生が技術ブログを書くメリット
webpackでTop-Level Awaitを使用して、一番上位でもawaitを使えるようにする方法
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
Obsidianで整理した知識をAnkiで定着させる方法
Figma × Keyboard Maestroでどこまで効率化できる?
マウス操作の完成度が高いウインドウリサイズアプリ「Magnet」
Macで複数ディスプレイを使っている場合に便利な設定集
AppCleanerでMacアプリを関連ファイルごと完全に削除する
操作に没頭できる!Firefox版 Arcのようなブラウザ「Zen Browser」
chezmoi(シェモア)で始めるdotfiles管理
GitHubの通知を見逃さない!通知に特化したアプリ「Gitify」
Keyboard Maestroの変数基礎
Neovimを使い始める最初の一歩として便利な「LazyVim」