いろんな本を読んでみると、やはりドメイン力を強くしていく事が重要だと書かれておりますよね。
このドメイン力なんですが、自分のサイトのように/blogのは以下にブログを作っている場合(サブディレクトリ)は不利のようなんです。
サブドメインの場合は、主ドメインの前に●●●とか追加されるので、サブディレクトリとは違うようなんです。
今回、このサブディレクトリから親のルートディレクトリにサイトアドレスを変更して、ドメイン強化をするようにしたので、その方法を紹介します。
wordpressをサブディレクトリでインストールした場合、ルートディレクトリにサイトアドレスを変更する場合の方法が分かり、簡単な作業で対応できます
何故サイトアドレスの変更するのか
自分はwordpressをインストールする際に、/blogと言うサブディレクトリを作成して、その配下にwordpressのデータを一式置くようにしました。
これは、ルートディレクトリ配下に直接データを置くと、ルートディレクトリ内が煩雑になる事と、セキュリティ的に良くないと言う事からサブディレクトリにwordpressをインストールしました。
そのような方法でインストールし、運用を開始するとブログにアクセスする場合には以下のURLになります。
xxxx.xxxx.jp/blog/
このようになっても、実際の運用上は問題無いのですが、ドメインパワー的には主ドメインではないので、弱くなるらしいのです。
従って、ドメインパワーを上げていくためにも/blog配下で無くしたいのですが、それを行うためには、ルートディレクトリ直下に再度インストールし直せば良いことになります。
しかし、既に数百の記事が入っていたりする場合、得策ではありません。
今回は、再インストールしないで現状を維持しながらサイトアドレスを変更します。
xxxx.xxxx.jp/blog/ → xxxx.xxxx.jp が目標
サイトアドレスの変更する作業は3つ
実際にサイトアドレスを変更していくための作業としては3つあります。
- 現状の/blogディレクトリから.htaccessとindex.phpをコピーし修正する
- 修正した.htaccessとindex.phpをルートディレクトリ内に転送する
- wordpressの一般設定でサイトアドレス(URL)を変更する
それでは各々の作業について見ていきましょう。
現状の/blogディレクトリから.htaccessとindex.phpをコピーし修正する
FTPソフトを使用して、サーバーから.htaccessとindex.phpの2つのファイルをダウンロードする

.htaccessをエディタで開き、一番最後の方に以下のコードが見つかると思います。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
# BEGIN WordPress # "BEGIN WordPress" から "END WordPress" までのディレクティブ (行) は # 動的に生成され、WordPress フィルターによってのみ修正が可能です。 # これらのマーカー間にあるディレクティブへのいかなる変更も上書きされてしまいます。 <IfModule mod_rewrite.c> RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase /blog/ RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /blog/index.php [L] </IfModule> |
8行目のRewriteBase /blog/ → RewriteBase /
※/blog/のサブディレクトリを/のルートディレクトリに変更
10行目のRewriteRule . /blog/index.php [L] → RewriteRule . /index.php [L]
※同様に/blogを削除する
に変更をして保存する。
同じようにindex.phpをエディタで開き、最終行を修正する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<?php /** * Front to the WordPress application. This file doesn't do anything, but loads * wp-blog-header.php which does and tells WordPress to load the theme. * * @package WordPress */ /** * Tells WordPress to load the WordPress theme and output it. * * @var bool */ define( 'WP_USE_THEMES', true ); /** Loads the WordPress Environment and Template */ require __DIR__ . '/wp-blog-header.php'; |
最終行のrequire __DIR__ . ‘/wp-blog-header.php’; → require __DIR__ . ‘/blog/wp-blog-header.php‘;
※/blogを先頭に追加する
同じように保存して完了。
修正した.htaccessとindex.phpをルートディレクトリ内に転送する
出来上がった2つのファイル(.htaccessとindex.php)をルートディレクトリUploadする。
※/blogディレクトリでは無い事に注意

これで下準備は完了となるので、最後にwordpressの設定を変更する。
wordpressの一般設定でサイトアドレス(URL)を変更する
wordpressの左側にあるメニュー一覧から設定 → 一般の順番で開く。
上から4番目のサイトアドレスの/blogを削除する。

修正する際に、修正箇所(赤枠)の上にあるwordpressアドレスは絶対に修正しないこと。これを修正するとログインなどができなくなる。
- wordpressアドレスは実際にインストールしたURL
- サイトアドレスは実際にアクセスするURL
変更後に保存を押して完了。
これでサイトアドレスがxxxx.xxxx.jpでもxxxx.xxxx.jp/blog/でも、同じページがアクセスできることを確認する。
もし、ダメな場合はwordpressの【設定】で、【パーマリンク】のページで、何も修正せずにただ保存を押す。
これをすることで、wordpressがリフレッシュされるそうだ。
※何も修正せずに多々保存だけを押すのがポイント!
これで無事表示されるはずだ。もしダメな場合、修正内容とアップロードした場所をもう一度確認する。
最後に、アップロードした.htaccessのアクセス権を604に設定する。
これはFTPソフトで簡単に修正できるはずです。(以下は自分の場合)

以上でサイトアドレスの変更は完了です。お疲れ様でした。
サイトアドレスの変更作業で最後の最後にすること
今までの修正を行えば、サイトアドレスの変更は完了したと思います。
しかし、このままでは大きな問題が1つ残ります。
それは、xxxx.xxxx.jpでもxxxx.xxxx.jp/blog/でも同じページにアクセスできてしまうため、コンテンツが重複しているとGoogleに判断されてしまうと言う事です。
そうですよね、xxxx.xxxx.jpでもxxxx.xxxx.jp/blog/でも同じページにアクセスすれば、どちらかがコピーしたと思われてもしょうがないです。
この重複を回避するために、xxxx.xxxx.jp/blog/にアクセスした場合は、xxxx.xxxx.jpへリダイレクトする設定を行わなければ行けませんね。
このリダイレクト設定ですが、先の.htaccessに記述する方法も有るようですが、自分の場合は何が悪いのか分かりませんが、何回やっても上手くいきません。
あげくの果てにインターナルエラー続出状態になったので、.htaccessでの変更は諦めました。
代わりにやったのが、プラグインを入れて対応することです。
今回使用したプラグインはSimple 301 Redirects by BetterLinksと言う物を使用したました。
これは現状のwordpressと互換性が有り問題無いのも非常にありがたいですね。
このプラグインを普通にインストールし、有効化します。
メニューの設定の中に301 Redirectsと言う項目があるのでそこをクリックします。

設定画面で、Requestに/blogを記述し、DestinationにルートディレクトリのURLを記述し、ADD NEWを押せば完了です。
変に.htaccessを動くまで修正しているより、遙かに簡単ですね。
最後に、xxxx.xxxx.jp/blog/にアクセスしたら、xxxx.xxxx.jpにリダイレクトされることを確認して完了。
これでxxxx.xxxx.jpのみが存在することになりました。
サイトアドレスの変更作業 まとめ
今回、ずっと気になっていたサイトアドレスの変更を実施してみました。
案ずるより産むが易しではありませんが、以外と簡単に実行することができました。
確かにリダイレクトの部分で迷ったこともありましたが、基本は修正箇所も多くなく迷ったことを除けば、実質の作業時間は30分以内で完了です。
最終的な作業をまとめると以下になります。
- 現状の/blogディレクトリから.htaccessとindex.phpをコピーし修正する
- 修正した.htaccessとindex.phpをルートディレクトリ内に転送する
- .htaccessのアクセス権を604に設定する
- wordpressの一般設定でサイトアドレス(URL)を変更する
- プラグインを使用し、サブディレクトリからルートディレクトリへリダイレクトさせる
- 旧サイトアドレスにアクセスしても、新サイトアドレスになることを確認する
もし、皆さんの中に自分と同じようにサブディレクトリにwordpressをインストールしている人は、同じ方法でルートディレクトリ(ドメイン直下)に変更することができますので、ドメインパワーを強化するためにもやってみて下さい。
