• ベストアンサー

Perlと画像について

you-mの回答

  • you-m
  • ベストアンサー率58% (190/327)
回答No.4

sinxさんに1票。 提示したフォルダ構成が正しいとすれば、呼び出すパスが間違ってる時点で、正しいトラブルシューティングは不可能です。

jyamato
質問者

お礼

sinxさん、you-mさんご回答有難う御座います。 (すみません、一緒に回答のお礼をしてしまって…) 画像名などは、単なるタイプミスでした。 呼び出すパスはあっています。 すみません(・_・;)

関連するQ&A

  • 絶対パスでしか画像が表示されません。

    自分の端末(windows2000)にApacheをインストールしてCGIを作製しています。 IEでCGI(http://localhost/cgi-bin/xxx/xxx.cgi)を起動して 画像(c:/apache group/apache/cgi-bin/xxx/icon/xxx.gif)を 表示させたいのですが、<img src='★'>タグの★部分が 絶対パス(c:/apache group/apache/cgi-bin/xxx/icon/xxx.gif)だと 表示されますが、相対パスなど他だと表示されません。 どのような形式にしたら表示できるでしょうか? それともc:/apache group/apache/cgi-bin/配下にある画像は 表示できないのでしょうか? ※画像をIEでURL(http://localhost/cgi-bin/xxx/icon/xxx.gif)で  表示させようとしたところできませんでした。 ・IE確認用URL  http://localhost/cgi-bin/xxx/xxx.cgi ・CGIファイル  c:/apache group/apache/cgi-bin/xxx/xxx.cgi ・画像ファイル  c:/apache group/apache/cgi-bin/xxx/icon/xxx.gif ・Apacheのドキュメントルート  c:/apache group/apache/htdocs

    • ベストアンサー
    • HTML
  • cgi(perl)でパラメータが渡せない

    以下のプログラムでnum=9が伝わらないので、ミスをご指摘ください。 グラフィカルなアクセスカウンタを表示させようとしていますが うまくいかないのでテキストモードでデバッグしています。 [ /usr/local/apache2/htdocs/gif-view.html ] <html> <head> <meta http-equiv="Content-type:" content="text/html; charset=UTF-8"> <title>gif-view</title> </head> <body> <iframe src="/cgi-bin/gif-test.cgi?num=9"></iframe> <!-- <img src="/cgi-bin/gif-test.cgi?0" width=50 height=50> --> </body> </html> [ /usr/local/apache2/cgi-bin/gif-view.cgi ] permission は 755 にしています。 #!/usr/bin/perl print "Content-Type: text/plain;\n\n"; print "gif-test.cgi\n"; $prm0 = @ARGV[0]; if($prm0 = "") { print "Param is exist\n"; } else { print "Param is empty\n"; 実行結果として gif-test.cgi Param is empty となります。 httpd.conf で Script Alias /cgi-bin/ "/usr/local/apache2/cgi-bin/" を有効にしています。

    • ベストアンサー
    • Perl
  • htmlで画像が表示されない

    CGIを勉強し始めた者です。 手始めにCGIを使わずに画像表示をさせたところ早速つまづきました。 アドバイスお願いします。 vine linux 6.3 に apache2.4をソースからインストールしました。 /usr/local/apache2/htdocs に以下の cgi-test.html を置きました。 <html> <head> <meta http-equiv="Content-Type:" content="text/html; charset=UTF-8"> <title>CGI TEST</title> </head> <body> <h3>CGI TEST</h3> <img src="../cgi-bin/a0.gif">&nbsp;<img src="./a1.gif"> </body> </html> パーミッションは 755 root root cgi-test.html /usr/local/apache2/cgi-bin のパーミッションも 755 root root です。 ここに 数字0~9のgif画像を置いています。パーミッションは 644 root root 表示されないので/usr/local/apache2/htdocsにa0.gif, a1.gif を置いてみました。 パーミッションは 同じく 644 root root です。 数字0は表示されませんが、1は表示されます。 なぜ0が表示されないのかお教えください。

    • 締切済み
    • CGI
  • Webでgif画像が表示されません。

    基本的なことだと思いますが、教えてください。 http://www.cgi-down.com/cgi/g_counter.php 上のCGIのカウンターをためしに設置しようとしてみて 画像が×印で表示されてうまくいかず、以下のようにindex.htmlに <img src="../cgi-bin/image/0.gif"> <img src="127.0.0.1/cgi-bin/image/0.gif"> などと実際にGIF画像を表示させてみようとしたのですがそれでもうまくいきません。 場所は以下のようになっていて Linux上のファイラー上ではGIF画像は正しく表示されています。 # ls /var/www/html/index.html /var/www/html/index.html # ls /var/www/cgi-bin/image/ 0.gif 1.gif 2.gif 3.gif 4.gif 5.gif 6.gif 7.gif 8.gif 9.gif Thumbs.db httpd.confでは ScriptAlias /cgi-bin/ "/var/www/cgi-bin/" としておりExecCGIも有効にしています。 よければ教えてください。

  • apacheのScriptAliasの記述について

    どなたか,ご教授いただければ幸いです。 WindowsXp Proでapacheを動かしています。次の設定で,cgiはうまく動作していました。 --- <IfModule alias_module> ScriptAlias /cgi-bin/ \"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/\" </IfModule> <Directory \"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin\"> AllowOverride None Options ExecCGI Order allow,deny Allow from all AddHandler image/gif .gif AddHandler image/jpeg .jpg </Directory> --- これに, http://www.miloweb.net/win/server/apache.html を参考にして,各ユーザーフォルダでcgiが実行できるようにしようと,次のようにしました。 --- <IfModule alias_module> ScriptAlias /cgi-bin/ \"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/\" ScriptAlias /cgi/ \"C:/www/users/*/cgi/\" </IfModule> <Directory \"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin\"> AllowOverride None Options ExecCGI Order allow,deny Allow from all AddHandler image/gif .gif AddHandler image/jpeg .jpg </Directory> <IfModule mod_userdir.c> UserDir \"C:/www/users/*/\" </IfModule> <Directory \"C:/www/users/*/cgi/\"> AllowOverride None Options ExecCGI Order allow,deny Allow from all AddHandler image/gif .gif AddHandler image/jpeg .jp </Directory> --- その結果, http://localhost/~user/ としてuserのホームページにアクセスできるようになったのですが, cgiについては, http://localhost/~user/cgi/・・・ としてもアクセスできません。どなたか原因をご教授いただけないでしょうか。 ScriptAlias /cgi-bin/ \"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/\" ScriptAlias /cgi/ \"C:/www/users/*/cgi/\" の行を入れ替えると,\"C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin/\"においてあるcgiが実行できなくなります。ScriptAliasは1行目しか有効でないようにも見えるのですが,上に書いた参考URLではできているようなので,戸惑っています。

  • 画像リサイズCGI

    画像をリサイズするCGIを捜しています。 http://www.hidekik.com/rszim/rszim.html 上記のサイトのCGIが理想(縦横変換率%と面積変換率%があること)に近かったのですが、ユーザーがアクセスし画像をアップロードして使用するものではなく、 元々サーバーにある画像のみをリサイズ対象とするCGIを捜しています。 例えば、ですが rszim.cgiが指定したimageフォルダに、複数の画像(test1.gif、test2.jpg...)を入れておき、http://***/rszim.cgi?test1.gifというような、URLに画像名含むアドレスにアクセスすることで、その画像(test1.gif)のみリサイズ可能なものを捜しています。 できれば、フリーが望ましいです。perl・PHP問いません。GDはインストール済みです。

    • 締切済み
    • CGI
  • CGIカウンターの画像が表示されません

    まず、環境はwindows7 32bit xampp v3.2.1 xampp上のコントロールパネル→Admin→CGIのステータスは「開始」となっている。 apacheのv-host.conf上の変更点 <VirtualHost *:80> DocumentRoot "C:/www1" ServerName localhost <Directory "C:/www1"> Options ExecCGI Indexes FollowSymLinks MultiViews AddOutputFilter INCLUDES .html AddType text/html .shtml Order allow,deny Allow from all AddHandler image/gif .gif        AddHandler image/jpeg .jpeg .jpg .jpe  AddHandler image/png .png         AddHandler text/html .html .htm     Require all granted </Directory> </VirtualHost> とした。 http://www.kent-web.com/count/daycount.html 上記のサイトのDAY COUNTERをwindows7 cドライブ直下に以下の様に設定した。 www1/ +- index.html ... ここにカウンタを設置するものとする | |         累計カウント : <img src="daycount.cgi?gif"> |          昨日カウント : <img src="daycount.cgi?yes"> |          本日カウント : <img src="daycount.cgi?today"> | |          と記述 | +--daycount / daycount.cgi [705] | init.cgi [604] | check.cgi [705] | conv.cgi [705] | | .htaccess(AddType application/x-httpd-cgi .cgiと記述) | | +-- lib / gifcat.pl [604] | magick.pl [604] | +-- data / daycount.dat [606] | today.dat [606] | yes.dat [606] | +-- gif1 / 0.gif ... 9.gif | +-- gif2 / 0.gif ... 9.gif なお、daycount.cgi    check.cgi    conv.cgi    は一行目を#!"C:\xampp\perl\bin\perl.exe"とした。 色々サイトを見てcgi-binフォルダに画像ファイルを入れると画像が見れなくなる事とか apacheではCGIの入ったフォルダに.htaccess(AddType application/x-httpd-cgi .cgiと記述) を入れてやらないと動作しないとかの情報を元に上記の様な設定になったのですが上手くいかないようです。 一応画像もアップしておきました。なにかしらの参考になりましたら… この設定でどこかおかしい所が有ればご指摘願います。

    • ベストアンサー
    • CGI
  • 画像ファイルが崩れる

    Perlで、CGIを作成しています。 GIF画像をCGI経由で表示させようと思っているのですが、なぜか、画像が崩れてしまいます。GIFだけではなく、Jpegでも同じです。しかし、HTMLファイルの <img>タグでそのまま表示させようとすると、きちんと表示します。 どのようにすれば、崩れを抑えられますか? CGIソース---------------------- #!/usr/local/bin/perl $imgsrc="number/0.gif"; print "Content-type:image/gif\n\n"; open(IMG,$imgsrc); binmode(IMG); print <IMG>; close(IMG); -----------------------------EOF HTML---------------------------- <html> <head> </head> <body> <img src="cgi/image.cgi" width="28" hegiht="31"> </body> </html> ------------------------------EOF gif画像は、 http://www.akikobrand.com/icon/img/10/6/0.gif を使わせていただきました。(個人的な使用です)

    • ベストアンサー
    • CGI
  • UTF-8でソースを書くとエラーになる

    WinXPにApache2.0とperl5.8を入れて動作させているのですが、perlCGIをUTF-8で書くと500エラーになり表示することができません。 該当のソースは #!/usr/bin/perl package HTML; sub HEADER{ print "Content-type: text/html\n\n"; print << " -----END-----"; <!DOCTYPE HTML PUBLIC -//IETF//DTD HTML//EN> <html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf8"> <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> <title>Test Program</title></head> <body>\n -----END----- } sub FOOTER{ print "</body></html>"; } &HTML::HEADER; print"テスト"; &HTML::FOOTER; 上と同じものをsjisで保存すると、こちらは正常に動作します。打って変わってこれをUTF-8で保存するとエラーが起こってしまいます。 error.logには C:/Apache2/htdocs/script/base.pl is not executable; ensure interpreted scripts have "#!" first line (9)Bad file descriptor: don't know how to spawn child process: C:/Apache2/htdocs/script/base.pl と記録されていて、これを頼りにググってみましたが有効そうな情報を見つけられませんでしたので、どうか原因と解決策を教えてください。

    • ベストアンサー
    • Perl
  • convert

    ページを読み込んだときに、Image magickをつかって、epsファイルをgifファイルに変換するようにしたいのですが、変換出来ません。 #!/usr/bin/perl print "Content-type: text/plain", "?n?n"; $file1 = "/tmp/test.eps"; $file2 = "/tmp/test.gif"; system ("/usr/local/bin/convert $file1 $file2"); print"ok"; 変換前のファイルをjpgやgif形式、変換後のファイルをepsやjpg形式などにすると、変換出来ます。 また、コマンドラインからconvert test.eps test.gifとしても変換出来ます。 つまり、このcgiプログラムをつかってeps形式のファイルを変換しようとしたときにだけ、目的のファイルが出来ません(> <)どうしてなのでしょうか???

    • ベストアンサー
    • CGI