多分 mod_rewrite の設定が影響してるのではと思うのですが…
htaccessを提示してみればいかがでしょう?
現象だけがひたすら書かれていて、解決に必要な要件が一切提示されていないように思います。
nobita様
説明不足で申し訳ありません。
何かしらのファイルがある感じだが画像は見れず
こちらについてですが、アップローダーを使うと、途中でエラーメッセージは出ず、実際にサーバをFTPソフト等で確認すると
/wp-content/blogs.dir/
以下の該当箇所にファイルはアップされています。
そのファイルをFTPソフトでローカルにDLしなおしてプレビューすると、普通に見れるのでファイル自体が壊れているという事では無さそうです。
また、メディアライブラリにもファイルが追加され、ファイルの「代替テキスト」「キャプション」等の編集や投稿への埋め込みも可能です。
ただ、左上の画像のプレビュー部分に何も表示されず、「画像を編集」ボタンがあるだけの状況です。
画像を貼りつけた記事を見ると画像は表示されず、imgタグで書かれた画像のアドレス(/子サイト/files/2010/08/***.jpg)をブラウザで直接アクセスすると、Firefoxだとその画像へのパスが表示され、IEだと画像が無い時の「×」印がでた状態です。
本当にファイルがない場合は「404 — File not found.」という表示になるため、前回の投稿で「ファイルがある感じだが画像は見れず 」といった説明になりました。
shokun0803様
.htaccessの中身です。
管理画面 > ツール > ネットワーク の
「3) .htaccess ファイルに次を追加し、ほかの WordPress のルールを置き換えてください。」
にて書かれている内容になります。
# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
# END WordPress
いやいや、確かにhtaccessを提示してみては?とは言いましたが、意図が伝わらなかったようですねぇ。
自社のテストサーバでは問題なかったのですが、本番のサーバで動作しなくなったので
サーバー情報とか一切提示されていませんよね?質問ルールなどはちゃんとお読みになっていますか?該当の本番サーバーとテストサーバーとの違いはちゃんと把握されていますか?そもそもmod_rewriteなどは有効ですか?
情報を小出しにしないで必要な要件をきちんと提示しましょう。書き込みだけが増えて解決が遅くなるだけですよ;)
ms-files.phpは、
画像ファイルにヘッダーをつけて、画像を書き出すという作業を行っているファイルです。
ファイルタイプをチェックして、mimetype や last-modified 等のヘッダー情報を付加して、あとは、実際の画像を読み出しているだけなので、
このファイルが、他のヘッダーをつけてきたような場合はエラーになります。
(例:ファイルは正常に動作していても、CGIとして動作している場合、強制的にtext/htmlヘッダをつけてくることなどがあります。)
このため、リダイレクト先の、(files/…)画像ファイルにアクセスして、どんなヘッダーが付いているのかチェックをすすめるのはこのためです。
jpgもpngも.phpという拡張子で送信していますから、そのあたり、サーバの設定大丈夫ですか?
mod_rewriteが使える環境になっているかチェックするには、
未検証スニペット
function apache_is_module_loaded($mod_name){
$modules = apache_get_modules();
return in_array($mod_name, $modules);
}
if(apache_is_module_loaded('mod_rewrite')){
echo "だいじょうぶみたいだよ";
}
shokun0803様、nobita様
何度も手間を取らせてしまい申し訳ありません。
その後教えていただいた mod_rewrite 検証を試したり、サーバ会社に問い合わせしたりした結果、結局「wp-config.php」ファイルに設定を移す際に空行が入ってしまっていたのが原因だと先程判明致しました。
素人がトラブルで完全にテンパってしまい皆様にご迷惑をおかけ致しました。 m(_ _)m