質問箱/333

カテゴリ
サマリattachプラグインによるopenfileを行うと画像が表示されない
バージョン1.4.2
投稿者質問?
状態完了
投稿日2003-11-22 (SAT) 13:55:07

質問

attachプラグインによるopenfileを行うと画像が表示されません。

  • 添付自体は正常に終了する
  • #ref()による画像表示も正常に行える

よく似た事例でaaacafeの広告挿入の問題がありましたが、自宅サーバで運用しており、原因が違うと考えています。 環境は、

  • Windows2000 SP4
  • Apache 2.0.48
  • PHP 4.3.4

です。 Apache2.0.47、PukiWiki1.4 RC2の頃は正常に動作していましたが、どの時点から表示できなくなったのかは判りません。 何か調べる個所のヒント等だけでもいただければ幸いです。

回答

  • reimy 2003-11-22 (SAT) 14:10:25

    :config/plugin/attach/mime-type は設定されていますか?

    • 質問? 2003-11-22 (SAT) 16:04:31

      はい、デフォルト状態のままで設定されています。

  • 質問? 2003-11-24 (MON) 10:59:49

    問題の出ている添付ファイルですが、バイナリのものがおかしいような感じです。 テキストやソースは正しく表示されました。 バイナリの画像ファイルについては、ブラウザで表示したときに×印になることが多いですが、ときどき、HTTPヘッダの一部も出力されている感じです。

    HTTP/1.1 200 OK Date: Mon, 24 Nov 2003 01:52:58 GMT Server:
    Apache X-Powered-By: PHP/4.3.4 Content-Disposition: inline;
    filename="sibusibubeat.jpg" Content-Length: 67118 Content-Type:
    image/jpeg(以下省略)
    が、ブラウザに表示されます。
    何らかの設定で、:config/plugin/attach/mime-typeが無視されてしまっているのでしょうか?
  • pai? 2003-11-28 (FRI) 23:26:14

    便乗させてください。FreeBSD-5.1-RELEASE-p10/Apache 2.0.48/PHP 4.3.4 で、まったく同じ現象に悩んでいます。IEでブラウズすると画像が表示されるべき箇所が常に×印で、そこを右クリック→「プロパティ」として出てくるダイアログには次のようなメッセージが出ています:

    • プロトコル:Hyper Text 転送プロトコル(HTTP)
    • 種類: 使用不可
  • pai? 2003-11-29 (SAT) 11:04:56

    追加情報です。Netscape7.1, Opera 7.22 でブラウズした場合も、画像は表示されませんが、この場合はともに×印ではなく添付ファイル名(XHTML ソース内のimgタグのalt属性の値と思われます。)が表示されます。

  • pai? 2003-11-29 (SAT) 11:17:25

    たびたびお邪魔してます。原因がわかりましたので記しておきます。「質問」さんにも参考になると良いのですが:

    • 私の環境では、attach ディレクトリを pukiwiki の下ではなく別の場所に設定してあり、この場所は Web ロケーションとして見える場所ではありません。
    • 添付ファイルに対して#refを使った場合、pukiwiki.php は次のようなXHTML断片を出力します:
      <div ...><a href"attachのopenfileの呼び出し"><img src="attachディレクトリ/添付ファイルエンコード名" ...></a></div>
    • このimgタグのsrc属性の部分は、サーバのファイルシステム上のパスとしてではなく、Webロケーションhttp://(サーバ)/(src属性値)として解釈されます。
    • PukiWikiデフォルトのインストールだと自然にWebロケーションになっているが、私のように設定を変えていると、imgタグからは添付ファイルにアクセスできない、ということではないでしょうか。
    • 質問? 2003-11-29 (MON) 12:02:49

      元質問の者ですが、私の場合はWebロケーション内に設置したままのデフォルト状態で、attachプラグインのpcmd=infoで表示される詳細情報の「格納ファイル名」を直接ブラウザのアドレス欄に入力すると、画像が表示されました。

    • pai? 2003-11-29 (SAT) 12:38:56

      役に立てなくて残念です。上記の通りhttpd/PHPのバージョンが同じ環境でうまく動くようになりましたので、テストで協力できることがあればやってみます。遠慮なくどうぞ。

  • 質問? 2003-11-30 (SUN) 22:58:36

    2003-11-24 (MON) 10:59:49に書き込みした際には書いておいたのですが、attachのopenの結果で、先頭にゴミ1バイトが出力されるときに、ブラウザ画面にHTTPヘッダ+データが出力されるようです。ゴミ1バイトについては、IEから直接openではなく、右クリックして対象をファイルに保存したとき、元ファイルと比べて先頭に0Aが追加されているという差異があることまでわかりました…。

  • 質問? 2003-12-07 (SUN) 17:49:20

    PukiWikiの出力するXHTMLについても、全て先頭に改行が着いていることに気がつきました。Paraeditプラグインを入れていたので外してみましたが、変化なしです。pukiwiki.skin.ja.phpもチェックしてみましたが問題なさそうです。何かヒントがありましたら、よろしくお願いいたします。

    • reimy 2003-12-07 (SUN) 22:28:08

      pukiwiki.php(index.php)、func.php、file.php、plugin.php、html.phpの中に不必要な改行が入っていないか確認してみてください。改行(LF)の一部がCRLFになっていたりすると、そのような症状が発生する可能性があります。

      • 質問? 2003-12-08 (MON) 00:23:57

        アドバイスありがとうございます。Windos上で管理しているので教えていただいたファイルをエディタで改行をLFに指定して全ファイル更新しましたが、残念ながら変化ありませんでした。cvsから上記ファイルを再取り込みもしてみましたが駄目でした。どこだろう…。

  • 質問? 2003-12-12 (FRI) 23:24:55

    解決しました。ja.lngの最後に改行がひとつ紛れこんでおり、これを削除することで直りました。皆さん、ありがとうございました。

  • 困り者? 2004-05-08 (SAT) 02:13:24

    完了した質問を再びしてしまって申し訳ないのですが,質問さんとまったく同じ状況で苦しんでいます.ここに書かれていることはほぼやってみたのですが,まったく効果がなく先頭の改行が取れない状態です.ほたに原因はないのでしょうか.原因になりそうなポイントを教えてほしいです.おねがいします.pukiwikiのバージョンは1.4.3,PHPは4.3.4です


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-03-08 (月) 14:06:33
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.250 sec.

OSDN