ど素人から毛を生やす。<延>

WordPressをルート直下で表示する方法

Web > WordPress 2015年6月2日(最終更新:1年前)

このページは2015.6.2に作成されています。時代の流れとそぐわない可能性があったり、僕が今以上のど素人だった頃の記事だったりするので、新しい記事を探してみるのも良いかもしれません。

どもです。
社内で共有したいと言われたので、今回はWordPressの超初心者向けの記事を書きます。

h270602-1

こんな感じで、WordPressのインストールディレクトリがルート直下ではない場合に、WordPressをドメイン直下のURLで動かすためのお話です。

①管理画面から

管理画面上で設定すべき事項は2つです。

ひとつは、「設定」>「一般」から、「サイトアドレス」を変更すること。

h270602-2

この「サイトアドレス」の内容をルート直下(WordPressのトップページを置きたいディレクトリ)に変更し、保存します。

次に、「設定」>「パーマリンク設定」から「共通設定」を「デフォルト」以外にします。

h270602-3

項目はいくつかありますが、デフォルト以外なら何でも良いです。

何故デフォルト以外なのかと言えば、デフォルト以外の設定で保存すると、「.htaccess」というファイルが自動的に生成されるから。
この「.htaccess」がサイトアドレスを変更するのに必須のアイテムになります。

WordPress手動でインストールした場合や、サーバーの設定によっては、保存すると、
「.htaccess を更新する必要があります。」
というメッセージが表示されることがあります。
これは、「.htaccess」を自動で生成できませんでした、という意味ですので、「.htaccess」を手動で設置しなければなりません。

②FTPから

管理画面から設定しただけでは、404エラーや403エラーが表示されます。
この解決法についてです。

404エラーが表示された場合。

これは最もシンプルな理由で、「.htaccessかindex.phpが存在しない」というものです。
WordPressの「サイトアドレス」で設置したディレクトリに、「.htaccess」と「index.php」を置かなくてはなりません。

「.htaccess」を自動的に設置できなかった場合、以下の内容を書いた「.htaccess」というファイルを用意します。

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

拡張子が「.htaccess」でファイル名は無しです。
PCの設定によっては、ファイル名のない拡張子だけのファイルは作成できないので、その場合は「.htaccess.txt」などのテキストファイルとして作成してFTPソフトでアップロード、アップロード先のサーバーでファイル名を変更して「.htaccess」を作ります。

これを設置したら、今度はindex.phpを設置します。

index.phpはWordPressをインストールしたディレクトリに入っていますので、一度ダウンロードして開きます。

require( dirname( __FILE__ ) . '/wp-blog-header.php' );

この行を、

require(dirname( __FILE__ )  . '/WordPressのディレクトリ名/wp-blog-header.php');

あるいは、

require($_SERVER['DOCUMENT_ROOT']  . '/WordPressのディレクトリ名/wp-blog-header.php');

に変更します。

includeやrequireのパスは、フルパスでなければならないので、フルパスを取得するPHPタグを使います。
dirname( __FILE__ )は「現在開いているファイルの位置」を指します。
$_SERVER['DOCUMENT_ROOT']は「ルートディレクトリの位置」を指します。

どっちを使っても良いです。
肝心なのは、index.phpを開くとWordPressのディレクトリにあるwp-blog-header.phpにアクセスできるかどうかです。

403エラーの場合。

403エラーの場合、「.htaccess」にもう一文を追加する必要があります。

Options +FollowSymLinks

「シンボリックファイルを認識するかどうかの設定」ですが、シンボリックファイルとは…の説明は置いといて、取り敢えず403エラーが表示されたら「Options +FollowSymLinks」を書き加えるぞという認識で良いかと思います。

サーバーの種類・設定によっては、この記述を追加で行う必要がある感じです。

サーバーによってはPHPのバージョンを指定する必要性。

また、複数のPHPを持つサーバーの場合、PHPバージョンを指定しなければならないこともあります。

いわゆるCPIサーバーなどですね。

この場合は「このPHPを拡張子.phpのファイルで動かす」という指定をする必要がありますので、

AddHandler x-httpd-php5516 .php

5516の部分は、お使いのサーバーのPHPバージョンに合わせる感じです。

この記事は役に立ちましたか?
  • _(:3」∠)_ 面白かった  (0)
  • (・∀・) 参考になった (0)
  • (`・ω・´) 役に立った (0)