サポート » 使い方全般 » ブログのアドレスの変更後、画像をアップできない

  • wpdocs.sourceforge.jpのGiving WordPress Its Own Directory手順に従い、
    ブログのアドレスを変更しました。

    WordPressのアドレス> http://example.com/wp/
    ブログのアドレス> http://example.com/

    その手順の中で、10番にあたる「新しい URL からログイン」を仕様として、
    http://example.com/wp-admin/
    にアクセスしたところ、ファイルが見つかりませんと出てしまいます。
    ※元のアドレスhttp://example.com/wp/wp-admin/にはログインできます。

    また、この状態で手順11のパーマリンクの更新を行いました。

    サイト自体はあたらしいアドレスhttp://example.comで表示されるようになりましたが、画像をアップロードしようとすると、

    ディレクトリ /public_html/wp/wp-content/uploads/2009/11 を作成できませんでした。この親ディレクトリのアクセス権はサーバーによる書き込みを許可していますか ?

    と出ていまい、アップロードが出来なくなってしまいました。

    これは元のアドレスから管理画面にログインして行っているから、起きている問題なのでしょうか?
    その場合、新しいアドレスからログインするにはどのようにすれば良いのでしょうか?

    ちなみに、アクセス権の問題が出たので、パーミッション関係を調べてみたところ、
    /public_html/wp/wp-content が 755
    /public_html/.htaccess が 707
    でした。

    どなたか、原因が分かる方教えてください。よろしくお願いいたします。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • モデレーター jim912

    (@jim912)

    haluhanaさん、こんにちは。

    サーバの情報がかかれていませんが、PHPがセーフモードで動いていたりしませんか?

    セーフモードによる制限と対処方法

    あるいは、
    /public_html/wp/wp-content/uploads/2009
    のパーミッションあたりはどうでしょう。

    トピック投稿者 haluhana

    (@haluhana)

    jim912さん、こんにちは。

    確認してみたところ、
    /public_html/wp/wp-content/uploads/2009
    のパーミッションは、755でした。

    サーバーのセーフモードの件は、ちょっとこれから調べてみますが、
    今回はhttp://example.com/で既にサイトを運営しており、新規サイトをWP で作ったので
    http://example.com/wp/にリニューアル版のサイトを作り、コンテンツを追加したりなんなりして、一通り作業が終わったので、いざ公開ということでアドレスを変更しています。

    なので、それまでは普通にアップロードなども問題なく出来ていましたので、サーバーのセーフモードは大丈夫なような気がします。

    ちなみに、サーバーはエックスサーバーです。

    今回のこのアドレス変更作業のなかで一点引っかかってるのが、手順7の .htaccess ファイルをコピーするという部分で、はじめに他のサイトを見ながら作業を行ったので、コピーではなく「移動」させてしまったのが関係しているのかな…とも思い、http://example.com/wp/のほうに .htaccess ファイルが無くなってしまったので、空の .htaccess ファイルをアップロードして、パーミッションの変更などしたのですが、それがまずかったのでしょうか…。

    トピック投稿者 haluhana

    (@haluhana)

    セーフモードによる制限と対処方法を参考に、あらかじめ画像のアップロード先のフォルダを用意してからアプロードしたところ、エラーの内容が

    アップロードしたファイルを/public_html/wp/wp-content/uploads/2009/11に移動できませんでした。

    というふうに変わりましたが、やはりアップロードは出来ませんでした。

    モデレーター jim912

    (@jim912)

    haluhanaさん、こんにちは。

    ディレクトリを移動したときに、ディレクトリのオーナーが変わって書き込み権限がなくなったとかかもしれませんね。下記のディレクトリのパーミッション707、それでだめなら777に変更して試してみてください。

    /public_html/wp/wp-content/uploads
    /public_html/wp/wp-content/uploads/2009
    /public_html/wp/wp-content/uploads/2009/11

    色々と勘違いされているようです。

    まず、wordpressはサブディレクトリ(wp)にインストールしていて、コアファイルの移動は行わずに公開アドレスのみをルートにしたいのですよね?

    であれば、Codexの「サブディレクトリに新規インストールする(した)場合」に該当します。で、「上記手順の 1 と 6 を飛ばして」とあるのですが、ここで言う上記手順の内容は「ルートディレクトリにインストールされたwordpressをサブディレクトリに*移動*する」ものなので、既にサブディレクトリにインストールされている場合、あくまでも「WordPress のアドレス」はインストールしたディレクトリのままであり、管理画面もインストールディレクトリのままです。つまり、

    その手順の中で、10番にあたる「新しい URL からログイン」を仕様として、
    http://example.com/wp-admin/
    にアクセスしたところ、ファイルが見つかりませんと出てしまいます。
    ※元のアドレスhttp://example.com/wp/wp-admin/にはログインできます。

    は当然であり、公開ディレクトリを変更しただけなので「新しいURL」というものは管理画面に関しては今回の場合存在しません。(これはルートからサブディレクトリにコアファイルを移動した場合の「新しいURL」なのですね)

    で、画像がアップロードできない件なのですが、

    なので、それまでは普通にアップロードなども問題なく出来ていましたので、サーバーのセーフモードは大丈夫なような気がします。

    これが可能であった時点で、権限もセーフモードも関係ない気がします。
    さらに、

    今回のこのアドレス変更作業のなかで一点引っかかってるのが、手順7の .htaccess ファイルをコピーするという部分で、はじめに他のサイトを見ながら作業を行ったので、コピーではなく「移動」させてしまったのが関係しているのかな…とも思い、http://example.com/wp/のほうに .htaccess ファイルが無くなってしまったので、空の .htaccess ファイルをアップロードして、パーミッションの変更などしたのですが、それがまずかったのでしょうか…。

    ここが最大の問題なのではないでしょうか。
    htaccessはコピーが大前提です。理由は「コアファイルははじめにインストールした場所から移動されていない」からです。下位のディレクトリにhtaccessがあるばあい、上位のディレクトリの設定を上書きしてしまいます。インストールディレクトリにあるhtaccessを削除してみるか、ルートのhtaccessをインストールディレクトリにコピーしてみてはどうでしょう?

    ちなみにパーマリンクの更新で今回のような場合、ルートにコピーした方のhtaccessを更新するようです(Codexの記述だとそう読み取れます)。この場合元々インストールディレクトリに存在していたコピー元のhtaccessとコピー後にパーマリンクの更新で変更されたルートのhtaccessに違いが発生するのかはちょっと分かりません・・・(違いがでるようだと上で説明したルートのhtaccessをコピーはちょっとまずいかもしれません・・・)

    jim912さんはたぶん「wpディレクトリからルートディレクトリにコアファイルを移動した」前提で説明されていると思います?(そんなことないかな?)

    トピック投稿者 haluhana

    (@haluhana)

    jim912さん、shokun0803さん、ご返答ありがとうございます。

    管理画面は、元のアドレスのままで良いのですね。勘違いしていました。

    また、shokun0803さんに指摘していただいた通り、実際にインストールしたWPのディレクトリを移動したのではなく、公開アドレスのみをルートにしています。

    また、htaccessファイルの件ですが、

    「コアファイルははじめにインストールした場所から移動されていない」

    このコアファイル(htaccessファイルのことですよね?)は、はじめにインストールしたWPディレクトリのものをルートに「移動」しています。

    ただ、手順には「コピー」と書いてあったのですが、「移動」してしまった。つまり、もともとのインストールディレクトリ「WP」にhtaccessファイルが無くなってしまったので、白紙のhtaccessファイルをアップロードして閉まったのが問題なのでは….と考えていました。

    ご指摘していただいた、「インストールディレクトリにあるhtaccessを削除してみる」というのは、おそらく始めに「移動」してしまった時点で削除したことになるかと思います。

    もう一つの「ルートのhtaccessをインストールディレクトリにコピーする」というのは、ちょっとやり方が分かりません。私は普段Macを使用していますが、Macだと「.」から始まるファイルは表示されないので、一旦サーバーのルートフォルだから.htaccessファイルをダウンロードというのが出来ないのです。

    はじめにコピーではなく移動してしまったのも、一旦サーバーからDLしてアップロードではなく、FTP上でディレクトリを[移動」させたのです。

    ちなみに、昨日いろいろとパーミッション関係を変更したりして試してみたところ、画像のアップロードはjim912さんの指摘のあった
    /public_html/wp/wp-content/uploads/2009
    を707に変更してみたところ、正常にできるようになりました。

    同じサーバー内にいくつかWPをインストールしており、ここのフォルダのパーミッションは他では755で動いているのに、今回のアドレスの擬似的な変更をしている場合のみ755では動かないということなんでしょうか…。

    また、画像のアップロードと同時にプラグインのインストール関係もおかしくなっており、いままで既存のプラグインのアップグレードはアップグレードボタンのワンクリックで行えていたのに対して、現在は接続情報を入れなくてはアップグレードできなくなってしまいました。

    試しにpluginフォルダのパーミッションも707に変更してみましたが、こちらはこれでは正常にワンクリックでのアップグレードは出来ませんでした。

    おそらく、どちらも原因は同じだと思うのですが、上記のような状況を見て心当たりがある方はいますでしょうか。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • トピック「ブログのアドレスの変更後、画像をアップできない」には新たに返信することはできません。