WordPressでサブドメインを利用し、301リダイレクトを設定した際に、元のサイトのダッシュボードへアクセスできなくなるという問題は、多くの初心者が直面する課題の一つです。本記事では、その原因と解決策について詳しく解説します。
301リダイレクトとは?
301リダイレクトは、あるURLから別のURLへ恒久的に転送する設定です。主にSEOの目的で使用され、検索エンジンに新しいURLの存在を伝える役割を果たします。
しかし、WordPressの管理画面(ダッシュボード)にも301リダイレクトが適用されるため、元のドメインの管理画面へアクセスしようとするとサブドメインへリダイレクトされ、編集ができなくなってしまいます。
ダッシュボードがサブドメインにリダイレクトされる原因
301リダイレクトを設定すると、元のドメインのURLへアクセスしようとした際に強制的にサブドメインへ転送されます。これにより、元のWordPressサイトの管理画面(wp-admin)にも影響を及ぼし、ログイン後にサブドメインの管理画面へ飛ばされてしまうのです。
解決策
1. .htaccessファイルを編集する
301リダイレクトの設定を、管理画面(wp-admin)には適用しないようにすることで、元のドメインのダッシュボードにアクセスできるようになります。
以下のコードを.htaccess
ファイルに追加してください。
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/wp-admin/
RewriteRule ^(.*)$ http://sub.example.com/$1 [R=301,L]
この設定では、管理画面(/wp-admin/
)へのアクセスはリダイレクトされず、その他のページのみがサブドメインへ転送されるようになります。
2. リダイレクトプラグインを使用する
WordPressのリダイレクトプラグインを利用すると、より簡単にリダイレクト設定をカスタマイズできます。
おすすめのプラグイン:
- Redirection
- 301 Redirects – Easy Redirect Manager
プラグインの設定で、管理画面(/wp-admin/
)へのリダイレクトを除外するルールを追加してください。
3. wp-config.phpで管理画面のURLを固定する
WordPressの設定ファイル(wp-config.php
)に以下のコードを追加し、管理画面のURLを元のドメインに固定することもできます。
define('WP_HOME', 'http://example.com');
define('WP_SITEURL', 'http://example.com');
この方法を使うと、リダイレクトの影響を受けずに元のドメインの管理画面へアクセスできるようになります。
アドセンス申請と301リダイレクトの注意点
301リダイレクトを設定することで、サブドメインのサイトをGoogle AdSenseの審査対象にすることは可能ですが、Googleが「サイト全体の一貫性」を重視するため、リダイレクトの方法によっては審査が通りにくくなる場合があります。
また、301リダイレクトの適用範囲を誤ると、元のドメインのアクセスデータが失われたり、SEOに悪影響を及ぼすことがあるため慎重に設定を行いましょう。
まとめ
WordPressで301リダイレクトを設定した際に元のダッシュボードが編集できなくなる問題は、.htaccessやwp-config.phpの適切な設定によって回避できます。
- .htaccessを編集し、wp-adminへのリダイレクトを除外する
- リダイレクトプラグインを使用し、カスタマイズする
- wp-config.phpで管理画面のURLを固定する
これらの方法を試して、リダイレクトの影響を最小限に抑えながら、適切に管理できるようにしましょう。
コメント