より良い環境を求めて このページをアンテナに追加 RSSフィード

2007-03-07

[][] Debian (etch) のapache2で画像が表示されない

画像とかcssとか全然表示されない・・。

$ telnet localhost 80
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
GET /img/hoge.jpg HTTP/1.0
Host: localhost

HTTP/1.1 200 OK
Date: Wed, 07 Mar 2007 20:38:28 GMT
Server: Apache/2.2.3 (Debian) mod_python/3.2.10 Python/2.4.4 PHP/5.2.0-8 mod_perl/2.0.2 Perl/v5.8.8
Last-Modified: Wed, 07 Mar 2007 19:55:58 GMT
ETag: "a7e-3d1-943d4f80"
Accept-Ranges: bytes
Content-Length: 977
Connection: close
Content-Type: image/jpeg

Connection closed by foreign host.

なんでヘッダだけ出力してコネクション切ってるの・・。

ヘッダはちゃんと出てるしContent-Lengthも合ってるから当然エラーログは無い。


no title >>208

情報交換BBS



・・・と思ったらiconsのフォルダ画像なんかは表示される。

自作画像を /usr/share/apache2/icons/ 以下に入れたらちゃんと表示される。・・・なんで?

あと画像サイズが50バイト程度のものも表示される。



apacheのログレベルをdebugにしたら原因が分かった。

Invalid argument: core_output_filter: writing data to the network

こんなログが出てたよ・・。こっちは検索でヒットする。


EnableSendfile Off

とすることで解決した。



で、検索してもあまりヒットしなかった理由は・・・普通はsendfileに対応しているファイルシステムを使うもんね。私の場合/home以下はunionfsを使っていたから。。

思わぬところで時間をくった。DebianApacheが悪かったんじゃなくてファイルシステムのせいだったとは。。しかも初めの方はIEでチェックしてたから余計に躓いた。IEキャッシュの変な動きがよくわからない。


こういうハマりポイントがあると、本番でunionfsを使うのはダメだな・・。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト

コメントを書くには、なぞなぞ認証に回答する必要があります。