• 締切済み

PHPでアップロードした画像が表示されません

現在、Redhat9+Apache+PHP+PostgreSQLでサイトを構築しています。 PHPはRPMでインストールしました。 php-4.2.2-17.2.i386.rpm PHPでアップロードのフォームを作成し、jpegやgifなどの画像ファイルをアップロードし、表示するパスをDB(PostgreSQL)で管理しています。 画像は/tmp/ に一度アップされ、指定のパスに正常にコピーされているようなのですが、実際、ブラウザで見ると×印がでて表示されません。 アップロードされた画像をダウンロードして、画像処理ソフトなどで開いてみたのですが、表示されません。 アップロードの際に画像ファイルが壊れてしまったように思えます。 どなたか、解決方法等をご存知の方がいらっしゃいましたらご教授願えないでしょうか? よろしくお願いいたします。

みんなの回答

回答No.1

どなたも回答されてないようですので。 まず確認ですが、指定のパスに本当にコピーされていますか?アップロードしたファイルと、ダウンロードしたファイルのファイルサイズの確認はしましたか? →もしファイルサイズが違っていれば正常にコピーされていないですね。 ファイルサイズが同じでしたら、 1. パス又はファイル名が違っていませんか? 2. WEBアクセス出来ないパーミッションになっていますか? 3. 指定のパスはWEB公開されていますか? 1.はパス名を正せば良いです。 2.はPHPでアップロードした場合、2.のパーミッションについてはそれ程心配する必要は無いと思われますが、確認下さい。 3.は例えばホームディレクトリが/home/httpd/html/なのに、ファイル保存先が/home/user/files/ だったりするとWEB公開されていないので当然ダウンロードも出来ません。 この辺の状況が分かりませんので、これ以上は何とも。 質問とは直接関係なく、蛇足ですが、 > php-4.2.2-17.2.i386.rpm はバージョンがちょっと古すぎると思います。古いからうまく動かないと言う事ではありません。 セキュリティ上の問題が多数報告されており、最新版は4.3.11になります。 rpmですとなかなか新しいバージョンは配布されていないのですが、下記URLあたりを参考にしてみてはどうでしょうか。 http://alectrope.ddo.jp/mt/archives/2004/12/20/php_4310_rpm

関連するQ&A