忍者ブログ
14 January

WPインストールディレクトリを1階層下げたい かつ表示されるのは上位ディレクトリ

http:://*****/wp/ というフォルダにインストールしたけど、
http:://*****/ というURLにしたいっていうお話はたくさんある。

私は反対に
http:://*****/ にぶちまけたけど、
http:://*****/wp/ に階層下げて移して なおかつ
http:://*****/ で表示されるようにしたい


WordPress を専用ディレクトリに配置する


ルートディレクトリにインストール済みの場合

http://wpdocs.sourceforge.jp/WordPress_%E3%82%92%E5%B0%82%E7%94%A8%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%81%AB%E9%85%8D%E7%BD%AE%E3%81%99%E3%82%8B

WordPress をルートディレクトリにインストール済みの場合、WordPress ファイルを専用ディレクトリへ移動するには次のようにします(ディレクトリ構成例も参照)。

(注意) 作業の順番を間違えたり飛ばしたりすると、サイトにアクセスできなくなることがあります。一つずつ確実に進めましょう。

  1. WordPress のコアファイルを置くための、新しいディレクトリを作成する(この手順では仮に wp とする)。
    (linux の場合、www ディレクトリで mkdir wp を実行。十中八九、作成した wp ディレクトリで "chown apache:apache" することになるでしょう)
  2. 管理パネル 設定 > 一般設定パネルを開く
  3. WordPress のアドレス (URL) 欄を、新しい WordPress コアファイルの URL に変更する。例:
    WordPress のアドレス (URL): http://example.com/wp
  4. サイトのアドレス (URL) 欄を、ルートディレクトリの URL に変更する。例:
    サイトアドレス (URL): http://example.com
  5. 変更を保存をクリック。 (この時点ではエラーメッセージが出ても気にせず、サイトを表示しようとしないでください。「ファイルが存在しない」というメッセージが出るはずです)
  6. WordPress コアファイルを、手順 1 で作成した新しいディレクトリ(「WordPress のアドレス」)へ移動する
  7. WordPress ディレクトリにある index.php  .htaccess ファイルを、手順 4 で設定したサイトのルートディレクトリ(「サイトのアドレス」)へコピーする(移動ではなくコピーすることに注意)。
    • パーマリンク設定を使っていない場合、htaccess ファイルは存在しません。
    • WordPress を Windows (IIS) サーバー上で動かしており、パーマリンク設定を使っている場合は、htaccess ファイルの代わりにweb.config ファイルが WordPress のディレクトリにあるはずです。上記の通り、index.php をルートディレクトリに(移動ではなく)コピーし、web.config ファイルをルートディレクトリに(コピーではなく)移動してください。
    • 存在するはずの .htaccess ファイルが見えないときは、FTPクライアント隠しファイルの表示設定を行なうこと。
  8. ルートディレクトリの index.php ファイルをテキストエディタで開く
  9. 次の修正を行ない、ファイルを保存する。
    修正前:
    require('./wp-blog-header.php');
    修正後: WordPress コアファイルの新ディレクトリ名を使います。
    require('./wp/wp-blog-header.php');
  10. 新しい URL からログインする。例えば http://example.com/wp/wp-admin/ など。
  11. パーマリンクを設定している場合、パーマリンク設定パネルを開き、パーマリンク構造を更新してください。.htaccess に適切なパーミッションを設定してあれば、WordPress が自動で .htaccess を更新します。もし WordPress が .htaccess を書き換えられない場合、新しいリライトルールが表示されるので、(メインの index.php ファイルと同じディレクトリの).htaccess ファイル内に手動でコピーしてください。



9、 のところでindex.phpを開くと require((_FILE) '/wp-blog~~~~');
みたいな何か余計なのがくっついていた。
ここを残したまま上記のようにフォルダ名を付け加えたらエラーログがでた。
上記とまったく同じにするために余計な FILE~ みたいなのを消したらちゃんと表示された

ページを確認してみて正常に表示されないときは、とりあえずパーマリンク設定をそのまま保存しなおしてみる。白いページになったのでやったら直った。

最初にブログを作ってルートディレクトリにwpをぶちまけたが、
あとでショップを作りたくなって別のWPをインストールしなければならなくなった。
welcartはブログと共存できるが色々とめんどいし、welcartのせいで色々と制約がでる。
もう考えるのも面倒だしwpを分けたほうが管理も楽。
メディアライブラリが商品画像で汚れまくるのでわけたほうがわかりやすい。

しかしwpの中の別フォルダにwpとなると、パーマリンクの関係でリダイレクトされてうまくいかないらしい。それもそのはず、wpは末尾のURLが本物であって途中が変わってもリンクされるから。
ではマルチサイト化をしようか、と思ったらwelcartじゃマルチサイトに対応していない。
不具合がでたり動かなかったりしたらサポートに聞いても対応外。
結局ルートディレクトリに2つのwpフォルダを作り、一方をルートディレクトリURLに
みせかけるという方法にする。
PR