いつもお世話になっております。
私自身のHPで画像のアップロードが出来る様になればいいなと思い、
cgiの勉強がてら調べていた所、下記HPがヒットしたのでサンプルスクリプトを使用し、アップロードをしたのですが正常にアップできませんでした。
http://www.aimix.jp/cgi/acccgilibupfile.html
テストとして、【36,864 バイト】とのjpgファイルをアップしたのですが、
サーバには、【622 バイト】のjpgファイルが作成され、もちろん正常に表示されませんでした。
※サーバはLinuxの自宅サーバを使用しております。
※cgi-lib.plは導入済みです。
※スクリプトの内容を一行だけ下記の様に変更しております。
【open OUT,">./img/$fnme";】にして、配下ディレクトリの【img】に保存するように設定。ディレクトリパーミッション777
その他はデフォルトの内容です。
※cgiパーミッション755。
※wrapper.cgiにてcgiのエラーはなし。
※perlは、【which perl】コマンドにて/usr/local/bin/perlであることを確認済みです。
以上が確認したことなのですが、原因がわかる方、ご教授お願いします。
No.1ベストアンサー
- 回答日時:
参考にされたサイトの【サンプルソース】は自分でリクエストのMIMEマルチパートの解析をやってますね。
マルチパート解析と添付ファイルの取り出しは Perl標準の CGI.pm でできます。信頼性や今後の保守の手間を考えると、CGI.pm に乗り換えられた方が良いんじゃ無いかと思いますよ。 必要なら CGI.pm の使い方を思い出して具体的に書きますが、どうされますか?
素早い回答ありがとうございます。
お手間ではなければお願いいたします。
只、cgi.pmも使用してみたのですが、
$type = $query->uploadInfo(filename)->{'Content-Type'};
どのサンプルコードでも上記の、1行でwrapper.cgiにて、
【Can't use an undefined value as a HASH reference at ./up.cgi line 27.
】
が表示、もしくはinternal server errorが表示されてしまうのですが、なぜなんでしょうか?
これもコメントアウトの説明では、【# MIMEタイプの取得】と書いてあったのですが・・・。
サーバの設定がなにか問題があるのでしょうか?
No.2
- 回答日時:
No.1 です。
$query->uploadInfo(filename)->{'Content-Type'}
とありますが、filename は $filename の間違いですよね? まず、それを直してください。
うまくいかなければ、
http://perldoc.jp/docs/modules/CGI.pm-2.89/CGI.pod
を開いて uploadInfo を文字列検索してください。 その前後に、関係する事柄が書かれています。 ご自分のコードが間違って無いか確認してください。 特に、$filename に設定する内容が重要です。
それから、
http://chaichan.web.infoseek.co.jp/qa4000/qa4373 …
の中の 5:[回答] の内容も確認してみてください。
この件に関しては、そのCGIが動いている Webサーバーを疑うのはもう少し後で良いと思います。
返信ありがとうございます。
また、提示して頂いたサイトを読み込んでしまい、返信が送れすみません。
サイトの参考に注意し、0からスクリプトを組んでみました。
内容はつたないですが、結果的に満足いくものが作れました。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- Perl Perl の外部モジュールの利用方法 3 2022/07/10 18:34
- CGI CGIが読み書きするデータファイルのパーミッションはさくらのインターネットでは何にするべき? 1 2023/05/02 16:44
- CGI 古ーくからフリーのtree.cgi掲示板を利用させてもらって来ましたが、最新でなにか復活できないか? 2 2023/04/07 10:43
- ホームページ作成・プログラミング CGIが実行可能なHP領域又はレンタルサーバーでおすすめの所を教えてください 現在ホームページ領域の 1 2023/01/01 11:47
- Perl Perlのエラーについてご教授ください。初心者です。 CGIを別サーバに移したところ、Perlのバー 5 2023/05/31 10:48
- CGI CGIで出力するhtmlの<!DOCTYPE html>等のタグは要りますか? 2 2023/02/05 21:26
- CGI サイト訪問者の情報を取得したい 1 2023/02/21 11:03
- PHP $filePath = './user_img/' . $file['name'];? 1 2022/12/10 07:29
- Perl perlでリテラル値はメモリにどのように格納されているか? 1 2023/01/15 20:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
URLに~/cgi-bin/~を隠す方法
-
Apacheでのコンテントネゴシー...
-
EXCELファイルに誰がアクセスし...
-
《エクセルVBA》「他の人が該当...
-
ASPからJavaScriptへの受け渡し...
-
ラジオボタンのグループ化
-
MP Form Mail CGI で 500サーバ...
-
iframeの中から、親frameのURL...
-
perl 矢印演算子 -> の使い方
-
VBScriptで、ファイルから任意...
-
VBAでサーバーにアクセスするに...
-
CGIでソースがそのままでてしま...
-
Web Diary Professional設置後...
-
掲示板のスレッドが消えた!?
-
コアサーバー(coreserver)でのc...
-
SFTPなどは使わないホームペー...
-
ホームページ作成 cgi? java?
-
cgiでファイルダウンロード時の...
-
自社サーバー異常発生。CGIがポ...
-
http://tydsu.com/oeder と後ろ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
URLに~/cgi-bin/~を隠す方法
-
apache で /cgi-bin/にアクセス...
-
cgiでのアクセスカウンターの表...
-
cgiが動作しないのは?
-
CGIが動作しません。
-
初心者のCGI設置方法
-
PyCharmでのCGIを使ったWebサー...
-
FC2にwebPatio設置の方法
-
jsRSSの設置方法について【NEW】
-
相対パスか絶対パス??
-
perlを使用したcgiでの画像アッ...
-
cgi-binにアクセスするとforbid...
-
WEBサーバーのCGIエラーについて
-
CGIゲームの設置でエラーがでます
-
ローカル環境でのCGIエラー
-
patipati設置について
-
EXCELファイルに誰がアクセスし...
-
《エクセルVBA》「他の人が該当...
-
SFTPなどは使わないホームペー...
-
VBAでサーバーにアクセスするに...
おすすめ情報