WordPressサイトを運営する上で、ページのリダイレクトやアクセス制限など、細かい挙動を調整したい場面があります。

こうした設定は、サーバーに配置されている「.htaccess」というファイルを編集することで制御できます。

当記事では、初心者でも取り組みやすい、.htaccessで実現できる5つの基本カスタマイズを紹介します。

WordPressテーマ「GLUE」
WordPressテーマ「GLUE」
無料で高機能なWordPressテーマが手に入る。

.htaccessとは?

.htaccessは、サーバーで動作する重要な設定ファイルです。サイトの小さな司令塔のようなものとして覚えておくといいでしょう。

.htaccessでできること

.htaccessを編集すると、主に次のことができます。

  • リダイレクト(URL転送)
  • アクセス制御(IP制限)
  • SSL(https)への強制リダイレクト
  • BASIC認証の追加(サイトのパスワード保護)

.htaccessはどこにあるの?

サーバーのルートディレクトリや、WordPressを設置したフォルダに配置されています。

ルートディレクトリに配置されているhtaccess

ルートディレクトリに配置されている「.htaccess」

上記は、FTPソフト「FileZilla」で確認している画面の例です。

編集するときの注意点

重要なファイルなので、必ずバックアップをとってから編集してください。書き方を間違えると、サイトが表示されなくなりますので、いつでも元に戻せるように元の記述をコピペして保管しておきましょう。

WordPressをインストールしたときに最初から設置されている.htaccessには、すでに専用の記述が記載されているのがわかります。

「# BEGIN WordPress」「# END WordPress」の内側は絶対に編集しない

元々記載されている「# BEGIN WordPress」と「# END WordPress」の内側は絶対に触らないようにしてください。

FTPでの操作が不安な方には、以下のプラグインがおすすめです。WordPressの管理画面から直接「.htaccess」を編集できますし、バックアップ機能もついてます。

初心者におすすめのカスタマイズ

.htaccessに数行追記・編集するだけで、かんたんに行えるカスタマイズをご紹介します。

1. wwwあり・なしを統一する

サイトのURLは「www.example.com」と「example.com」のどちらでもアクセスできるケースが多いですが、この状態を放置するとSEO的に「別のURL」とみなされ、評価が分散する可能性があります。

そのため、wwwあり・なしをどちらかに統一しておくのがおすすめです。

# wwwあり → wwwなしに統一する場合の例
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]
エックスサーバーの場合は、サーバーパネルからかんたんに設定できるようです(2025/03/11〜)。
>> エックスサーバー公式のお知らせを見る

設定時は、WordPressの「一般設定 > サイトURL」と揃えておかないとリダイレクトループが発生することがあります。必ずWordPressのURL設定と一致させましょう。

WordPressの一般設定については、下記記事を参考にご覧ください。

2. httpからhttpsへリダイレクト

httpでアクセスされるページには「保護されていない通信」と表示されます。このままでは検索順位に影響する可能性があるので、自動的にhttps(保護されている通信)に転送する設定がおすすめです。

# HTTP → HTTPS リダイレクト

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]


# BEGIN WordPress

RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress
ポイントは、「# BEGIN WordPress」の前に追記する点です。WordPressブロックより前に置くことで、全てのアクセスを確実に転送できます。

サーバー側でSSLが有効化されていることが前提です。WordPress管理画面の「サイトアドレス(URL)」もhttpsに設定しておきましょう。

SSL化については、下記記事を参考にご覧ください。

3. 特定ページをリダイレクトする

特定のページのリダイレクトは、公開中のページのURLを変更したり、古いページを統合したいときに設定します。古いURLにアクセスしたユーザーが404エラーになったり、検索エンジンからの評価が失われる可能性を防ぐためです。

# BEGIN WordPress

RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

Redirect 301 /old-page.html https://example.com/new-page.html
ポイントは、「# END WordPress」の後に追記することです。新旧URLはご自身のサイトに置き換えて、間は半角スペースであけてください。

WordPressの場合、プラグイン「Redirection」を利用する方法も一般的です。

手軽に管理したい人はプラグイン、サーバーレベルで一括管理したい人は.htaccessを使うとよいでしょう。

4. 特定IPのアクセス制限

管理画面やログインページは、不正アクセスの標的になりやすいため、特定のIPアドレスのアクセスを制限できます。不正ログインやスパムなどからサイトを守る対策です。

スパムや不正アクセスが多い海外IPからのアクセスをブロックする方法は、下記記事でご紹介しています。

単にログインページのURLを変更して対策するなら、次のようなプラグインが便利です。

5. BASIC認証の実装

BASIC認証は、サイトにアクセスする際にIDとパスワードの入力を求める仕組みです。社内向けのメディアや会員限定サイトなど、アクセスを制限したい場面で有効活用できます。

こちらも「.htaccess」をカスタマイズして実現できます。設定方法は以下の記事を参考にしてください。

まとめ

サイトの司令塔となる「.htaccess」でできることについて、ご紹介しました。

非常に重要なファイルなので、編集時には細心の注意が必要ですが、リダイレクト処理やアクセス制限をしたいときに便利です。

編集前に必ずバックアップを取る前提で、要点は次のとおりです。

カスタマイズ内容 できること・注意点
wwwあり・なしを統一 SEO評価の分散を防ぐ。WordPressの設定と一致させる。
HTTPSへリダイレクト 全てのアクセスをHTTPSに統一。「# BEGIN WordPress」の前に追記。
特定ページのリダイレクト 別URLへのアクセスを自動転送。「# END WordPress」の後に追記。
IPアドレス制限 管理画面やログインページを不正アクセスから保護。
BASIC認証 社内向けメディアや会員限定サイトなどに使える。

難しそうに見えますが、基本を押さえれば便利に使えるので、少しずつ試してみましょう。

世界最高品質のデザインの
WordPressテーマ集
WordPressテーマ「REHUB」
WordPressテーマ「REHUB」
クチコミ評価サイトがつくれる高機能テーマ。
WordPressテーマ「RIKYU」
WordPressテーマ「RIKYU」
あらゆるジャンルのネットショップを構築。
WordPressテーマ「GAIA」
WordPressテーマ「GAIA」
高機能なイベントカレンダーを搭載。
WordPressテーマ「HORIZON」
WordPressテーマ「HORIZON」
横スクロールデザインの個性派ギャラリー。