.htaccessとは?SEOに影響するって本当
「.htaccessとは一体どういったものか」「SEOに影響するって本当?」このような悩みをお持ちの方が多いようです。
そこで今回は、.htaccessについて解説します。
この記事を読めば、.htaccessを使用するための条件や設置場所/有効範囲だけでなく、設置手順や記述方法、注意点もわかるようになります。
リダイレクト設定やURL正規化のような目的に合った設定を行うことでSEO対策したい方は、.htaccessを使ってみましょう。
.htaccess(ドットエイチティーアクセス)とは
.htaccess(ドットエイチティーアクセス)とは、「Webサーバーの基本的な動作をディレクトリ単位で制御できるファイルのこと」です。
ここで言うディレクトリとは、「ファイルを階層的に分類・保管する場所」を指していて、Webサイトを構成しているWebページ1つ1つを1枚の紙とすると、ディレクトリは紙を収納する箱に該当します。
そのため、フォルダとほとんど同じ意味で使われることが多いです。
そんな、ディレクトリと関係が深い.htaccessは設置することで、サーバー管理者ではなくても、サーバーの動きを制御できるようになります。
通常、Webサーバーを制御できるのは、rootアクセス権限を持つサーバー管理者だけです。
そのため、サーバーをレンタルしている人がサーバーの設定「httpd.conf」を変えることはできません。
しかし、.htaccessをサーバーへ格納することで、レンタルサーバーでもサーバーの動きを制御できるようになります。このように、.htaccessを設置すれば、サーバーの設定を自社好みにカスタマイズできるのです。
具体的には、リダイレクト設定(移転前のサイトに訪問してしまったユーザーを自動的に移転先のホームページへと誘導すること)やURL正規化(複数のURLが存在する場合に、検索エンジンから受けるページ評価を1つに集約させること)のように、目的に合った設定ができるようになります。
ただし、設定の仕方は目的によって異なるため注意が必要です。
設定するには、Apache(アパッチ)などのWebサーバーソフトウェアの使用環境下である必要があります。
しかし、Apacheは、なるべく.htaccessを使わないように勧めています。
なぜなら、.htaccessがWebサーバーの動作を制御できるほどの大きな力を持っており、Webサイトが表示されなかったり、セキュリティリスクが高まったりする恐れがあるからです。
こうした特徴を持つ.htaccessは「ディレクトリごとに設定したいけれど、サーバーのrootアクセス権限を持っていない」ときに使うことが求められます。
また、SEOにも影響するため、目的に合った設定を行うためにサーバーの動きを制御させる必要がある人たちはこぞって設定しています。
このように、.htaccessは目的に合った設定を実現させる際に役立ちますが、SEO対策としてリダイレクト設定やURL正規化を行うときにも必要になってきます。
検索流入を増やしたり、自社サイトの検索順位を上位に表示させたりしたい方は、.htaccessをうまく活用してSEO対策してみましょう。
.htaccessを使用するための2つの条件
.htaccessを使用するには、次の2つの条件を満たしている必要があります。
・.htaccessを使用できるWebサーバーソフトウェア(Apache)を使っている
・.htaccessを記述できる設定になっている
以下では、詳しく解説します。
.htaccessを使用できるWebサーバーソフトウェア(Apache)を使っている
.htaccessは、すべてのWebサーバーソフトウェアには対応していません。
そのため、.htaccessを使用するには、.htaccessを使用できるWebサーバーソフトウェアを使っていることが必須条件となります。
実際、.htaccess はMicrosoftのInternet Information Services(IIS)は対応していないので、注意が必要です。
目的に合った設定を行うことでSEO対策したい人は、使用しているWebサーバーソフトウェアが.htaccessを設定できるタイプかどうか確かめなければなりません。
万が一、今使っているWebサーバーソフトウェアが.htaccessを使用できないタイプになっている場合は、Apacheを使うようにしましょう。
.htaccessを記述できる設定になっている
.htaccessを記述できる設定になっていることも、.htaccessを使用するうえで満たしていなければならない条件の1つです。
実際、レンタルサーバーなどでは、セキュリティリスク回避の観点から制限がかけられていて、.htaccessを記述できる設定になっていないことがあります。
初期設定が.htaccessを記述できない仕様になっている方は、設定を見直しましょう。
.htaccessの有効範囲と設置場所
続いて、.htaccessの設置場所と有効範囲について解説します。
.htaccessの設置場所
目的に合った設定を施したいディレクトリ(Webページ)が.htaccessの設置場所になります。
たとえば、「https://www.aaa.com」というサイト全体に.htaccessを設定したいときは、ホームページの大元となる「https://www.aaa.com」のディレクトリにファイルをアップロードします。
「https://www.aaa.com/contact」というお問い合わせページに.htaccessを設定したいときは、ホームディレクトリである「https://www.aaa.com」よりも下層ディレクトリに位置づけられる「https://www.aaa.com/contact」にファイルをアップロードしましょう。
そんな.htaccessは、複数設置することもできます。
そのため、ホームディレクトリである「https://www.aaa.com」から枝分かれし、お問い合わせページとは別にサンクスページが出来たとすると、「https://www.aaa.com/thanks-page」がファイルのアップロード先となります。
.htaccessの有効範囲
有効範囲は、.htaccessを設定したディレクトリと、それよりも下層に位置するページやサブディレクトリ(元となるディレクトリの配下に位置するディレクトリ)までです。
たとえば、「https://www.aaa.com/service/1」と「https://www.aaa.com/service/2」の2つに枝分かれしている「https://www.aaa.com/service」というWebページが存在しているとします。
「https://www.aaa.com/service/1」のほうに.htaccessを設置すると、設定が反映されるのは
「https://www.aaa.com/service/1」とそれよりも下層に位置するサブディレクトリ「https://www.aaa.com/service/1.1」「https://www.aaa.com/service/1.2」となります。
このとき、同じ階層のディレクトリ「https://www.aaa.com/service/2」には設定が反映されないため、注意してください。
このように、htaccessを設定したディレクトリと配下に位置するディレクトリまでが、.htaccessの有効範囲ということになります。
.htaccessの設置手順
.htaccessを設置するときには、次の2つの手順を踏む必要があります。
記述する内容は設定する目的によって大きく異なりますが、大まかな流れは同じなので抑えておきましょう。
・.htaccessを作成する
・サーバーにアップロードする
以下では、詳しく解説します。
.htaccessを作成する
.htaccessを設置するには、まず.htaccessファイルを作成する必要があります。
メモ帳などのテキストエディタで作成できますが、文字コードが自動的に付与されてしまうことがあるので注意が必要です。作成する際は、次の4つを守りましょう。
・ファイル名を.htaccessにする
・文字コードはUTF-8にする(BOM)なし
・改行するときはLFを使う
・最後の行は改行する(エラー防止のため)
上記の注意事項を守らないと、正しく記述されなくなってしまいます。
目的に合った設定を行うことで、SEO対策したい方は特に気を付けましょう。
サーバーにアップロードする
.htaccessを作成したら、次はサーバーにアップロードします。
その際、FTPソフト(ファイルを送受信する際に使えるソフトウェアのこと)を使います。
なかでも、FFFTP.は操作性の高さを誇っていて、国内のユーザー数も多い定番のFTPソフトです。
設定の大まかな流れを同じですが、細かい設定はサーバーによって異なるので、使用しているサーバーのアップロードの仕方を確かめる必要があります。
.htaccessの記述方法と5つのできること
.htaccessを記述するとできることは次の5つです。
設置することで、様々なことができるようになりますが、目的によって設定が異なるため、それぞれの記述方法も併せて紹介いたします。
・リダイレクト設定
・ベーシック認証
・URL正規化
・IP制限
・カスタム404ページの表示
以下では、詳しく解説します。
リダイレクト設定
設定を行うことで、移転する前のサイトに訪問してしまったユーザーを自動的に移転先のホームページへと誘導できるようになります。
サイトリニューアル中で、しばらくWebサイトを公開できない場合やドメイン変更したときに役立ちます。
ユーザーを古いURLから新しいURLへ転送し、SEO評価を引き継ぐのがリダイレクト設定ですが、リダイレクトと一括りに言っても実は次の2種類に分けられます。
半永久的な転送。検索結果に表示されるのはリダイレクト先のURL
一時的な転送。検索結果に表示されるのはリダイレクト元のURL
意味が微妙に異なるので、状況に応じて使い分けられるようにしておきましょう。
リダイレクトを.htaccessを使って設定する方法は2つあります。
ページごとにリダイレクト設定するとき
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule(リダイレクト元URL)\(リダイレクト先URL)[R=301,L]
</IfModule>
リダイレクト先のディレクトリ構成がリダイレクト元と同じとき
Redirect permanent/リダイレクト先URL
ベーシック認証
設定を行うことで、ID/パスワードでアクセスを制限することができるようになります。
使えるのは次のような場合です。
・ホームページを限定公開したいとき
・一般に公開する前に何人かで管理したいとき
.htaccessを使ってベーシック認証の設定する際には、次の4行を記述しましょう。
AuthType Basic
AuthName “認証領域”
AuthUserFile “.htpasswdファイルの設置場所”
require valid-user
URL正規化
URL正規化とは、「複数のURLが存在する場合に、検索エンジンから受けるページ評価を1つに集約させること」です。
設定することで、クローラーから評価されるページを1つ指定できるようになります。
たとえば、ユーザーが「http://aaa.com」にアクセスすると、似たようなURL「https://www.aaa.com」にもユーザーがアクセスしてきて、Googleから重複したURLと見なされてしまいます。
そこで、検索エンジンから受ける評価を1つに集約させるために、「http://aaa.com」にアクセスしてきたユーザーを「https://www.aaa.com」に転送します。記述は下記の通りです。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule(http://www.aaa.com)\( https://www.aaa.com)[R=301,L]
</IfModule>
こうしたURL正規化のための記述を行うことで、SEO評価の分散を防ぐことができます。
目的に合った設定を行うとともに、自社サイトの上位表示化にも着手したい方はURL正規化をしましょう。
IP制限
IP制限とは、「特定のIPアドレスからのアクセスしかサイトやページを閲覧できないように制限をかけること」です。
ここで行っていることは、ホームページへのアクセスを制限できる点でベーシック認証と同じです。
しかし、方法が異なります。ベーシック認証はID/パスワードでアクセスを制限しますが、IP制限はIPアドレスで制限します。また、アクセスできる範囲だけでなく、アクセスできない範囲も設定することができます。
.htaccessを使ってIP制限の設定する際には、次のように記述しましょう。
oreder deny,allow
deny from IPアドレス
allow from IPアドレス
カスタム404ページの表示
カスタム404ページとは、「エラーが発生したときに画面に表示させるページのこと」です。
普段ネットサーフィンをしていて、Notfoundと表示されたことが一度はあると思います。
そんな404ページは、自分で作成することもできます。記述の仕方は下記の通りです。
ErrorDocument 404/404.html
.htaccessを設置するときの注意点
.htaccessを設置するときには、次の4点に注意しましょう。
・セキュリティ低下のリスク
・ファイル名/拡張子を.htaccessに変更する
・正しい場所に設置する
・.htaccessが表示されない
以下では、詳しく解説します。
セキュリティ低下のリスク
.htaccessは便利なファイルである一方で、良くないところもあります。次の2つです。
安全性を損ねる恐れ
自社で設定を行う分には問題ないですが、誰かに頼んだときに機密情報を共有するためセキュリティが危ぶまれます。
サーバーに負担がかかり、性能が落ちる
.htaccessは、サーバーの動きを制御できるほどの大きな力を持っているため、むやみに使おうとするとサーバーの状態を悪くさせてしまいかねません。
そのため、WebサーバーソフトウェアApacheも.htaccessを使わないことを勧めています。
ファイル名/拡張子を.htaccessに変更する
拡張子とは、「ファイルを識別する文字列のこと」です。
・PDFの拡張子はpdf
・画像の拡張子はjpeg
・.htaccessの拡張子は.htaccess
.htaccessで保存しないと設定が反映されないので、設定の際は必ずファイル名と拡張子を.htaccessに変更してください。
正しい場所に設置する
サイトの一部ページに反映させたいのに、サイト全体に対して.htaccessを設置してしまうと、設定を反映させたくないページにまで.htaccessが設定されてしまいます。
.htaccessを設定する際には、設置する場所に気を付けましょう。
.htaccessが表示されないことがある
.htaccessは設置しても表示されないことがあります。
.htaccessが表示されない場合は以下の2つの可能性が考えられます。
.htaccessが作成されていない
WordPressをインストールする際に、.htaccessファイルが作成されていなかったことが原因として考えられます。
自動で作成するには、現在の属性を「775」に設定します。
そして、WordPressにログインした後、設定>パーマリンク設定から「変更を保存」をクリックします。
.htaccessが表示されない設定になっている
.htaccessが隠しファイル(ドットから始まるファイル)になっている場合、.htaccessが作成されていたとしても表示されない現象が起こり得ます。
隠しファイルとは、「ユーザーが重要なファイルを誤って削除したり変更したりできないように、あえて表示しないようにしているWindowsの機能の1つ」です。
FTPソフトの設定状況によって異なるので、.htaccessを作成したのにもかかわらず表示されなくてお困りの方は、お使いのFTPソフトが.htaccessが表示されない設定になっていないかどうか確かめてみてください。
おわりに
今回は、.htaccessについて解説しましたが、いかがでしたでしょうか?
.htaccessとは、「Webサーバーの基本的な動作をディレクトリ単位で制御できるファイルのこと」です。サーバーへのrootアクセス権限を持っていない人でもWebサーバーを制御できる所が.htaccessの優れている点です。
.htaccessを使用するには、「.htaccessを使用できるWebサーバーソフトウェアを使っている」「.htaccessを記述できる設定になっている」という2つの条件を満たしている必要があります。
設置場所は、目的に合った設定を行いたいディレクトリ(Webページ)で、.htaccessを設定したディレクトリと、それよりも下層のサブディレクトリまでが有効範囲となります。
.htaccessを設置するときには、まず.htaccessを作成し、続いてサーバーにアップロードしましょう。
.htaccessを記述するとできることは大きく5つあり、次の通りです。
・リダイレクト設定
・ベーシック認証
・URL正規化
・IP制限
・カスタム404ページの表示
しかし、設置するときには次の4点に注意する必要があります。
・セキュリティ低下のリスク
・ファイル名/拡張子を.htaccessに変更する
・正しい場所に設置する
・.htaccessが表示されないことがある
リダイレクト設定やURL正規化のような目的に合った設定を行うことでSEO対策したい方は、.htaccessを使ってみてはいかがでしょうか。
【株式会社セレクト・ワン】
東京本社:03-5953-7160
株式会社セレクト・ワンの社員によってオススメ情報を執筆している【編集チーム】です。”初心者の方にもわかりやすく”をモットーに、記事を読んだら直ぐに実践できるWEBマーケティング関連の情報を紹介しています。
また、弊社の実績や導入事例から見る・コンテンツマーケティング・SEO対策・WEB制作など、様々な最新情報やノウハウも発信していきます。