2021/2/18 「HTML&CSS辞典」をオープンしました! 是非、ご覧になってください!

.htaccessとは? できることと注意点をわかりやすく解説します!

Webサイトを運営している方であれば、WebサイトのURL変更を行った経験がある人もいるかと思います。

このような場合、変更前のURLから変更後のURLにリダイレクト(転送)する必要があります。

この時に使用されるのが、「.htaccess」というファイルです。

このページでは「.htaccess」とは何か、「.htaccess」でできることをお話していきたいと思います。

是非、最後まで読んで頂けたらと思います。

「.htaccess」は「ドット・エイチ・ティ・アクセス」と読み、Webサーバーをコントロールするためのファイルのことです。

「.htaccess」ファイルはApache(アパッチ)などのソフトウェアが使用されている環境で使用が可能となっています。

通常、Apacheの制御は「httpd.conf」に記載されており、Webサーバー全体の制御はサーバー管理者しか変更することができません。

そこでレンタルサーバーで独自の設定を行いたい場合に「.htaccess」を使用します。

もし、「.htaccess」ファイルを使用できるか判断できない場合は、サーバー管理者に確認するといいでしょう。

「.htaccess」ファイルは普通のテキストでできており、簡単に作成することができます。

メモ帳に設定したい記述を行い、「.htaccess」というファイル名で保存すると完成です。

以下がhttpからhttpsに転送したい時の301リダイレクトの一例です。

Webサーバーの特定のディレクトリに「.htaccess」ファイルを設置するとWebサイトに対して様々な設定ができます。

例えば、Webサイト全体を制御したい場合はファイルを最上位のディレクトリに設置する必要があります。

ファイルは複数設置することが可能で、複数ファイルがある場合は下の階層のファイルが優先的に適用されます。

Apacheとは?

Apacheソフトウェア財団で開発されたWebサーバーのソフトウェアのことです。

オープンソースソフトウェアで無料利用可能、高機能、高いセキュリティ性、多くのOSに対応していることから世界中で一番利用されています。

多くのWebアプリケーションはApacheを想定して開発されています。




2.「.htaccess」でできること

次に「.htaccess」ファイルを使用することで設定できることを見ていきましょう。

「.htaccess」ファイルでできること
  • ユーザー認証機能の設定
  • URLの自動転送
  • エラーメッセージ表示
  • アクセス制限

ユーザー認証機能の設定

「.htaccess」ファイルでWebサイトのアクセス時にIDとパスワードの入力を求めるユーザー認証機能を設定できます。

ユーザー認証機能を設定することで、社員サイト、会員サイト等を作成することができます。

URLの自動転送

「.htaccess」ファイルでURLの自動転送を行うことができます。

最も使用するのがこのURLの自動転送かもしれません。

「.htaccess」ファイルにリダイレクト設定を行うと、自動的に旧URLから新URLへ転送することが可能です。

「.htaccess」を使用することでいままでの実績を新URLに移管できるのでSEO的にもいいです。

エラーメッセージ表示

ユーザーがURLの入力ミス、Webサーバーの混雑などが要因でエラーがあった時、エラー表示をカスタマイズしてブラウザに表示させることができます。

アクセス制限

「.htaccess」ファイルで特定のドメインやIPアドレスからの閲覧を拒否することができます。

また、特定のドメインやIPアドレスからの閲覧を許可することもできます。

他にも、、

上記で「.htaccess」ファイルでできることを4つ紹介しましたが、その他にも様々なコントロールが可能です。

便利な反面、記述を間違えると全体に大きな影響を与えるので注意が必要になります。

また、Webサーバーによって使用できない場合があるので、しっかりと確認してから使用するようにしましょう。




3.ポイント

ポイント
  • 「.htaccess」ファイルはWebサーバーをコントロールするためのファイルです。
  • 「.htaccess」ファイルでユーザー認証機能の設定、URLの自動転送、エラーメッセージ表示、アクセス制限を行うことができます。
  • 「.htaccess」ファイルを使用する前にWebサーバーの環境を確認しましょう

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です