• 締切済み

アクセスログCGIをimgタグで埋込むとブラウザに×表示されてしまう

アクセスログのCGIスクリプトを実行させるための埋め込みタグとして以下のように <img src="http://hogehoge.com/accesslog.cgi?url=http://hogehoge.com/index.html"> imgタグで指定するように指示されているのですが、imgタグで指定するとブラウザで表示したときに×が表示(画像イメージが存在しないときの状態)されてしまいます。 これを回避させる、良い方法はありますでしょうか?

みんなの回答

回答No.2

指示通り適切に記述できているのですか? それから検証するブラウザでは画像イメージが表示できていますか? あとは開発側では対応不可能でしょう? CGIが適切に画像イメージを吐き出してくれているかは 容易には検証できませんし・・・。 (もしかすると、直接アドレスを打ち込むと画像が見れるかもしれませんが、 その辺はCGIの仕掛け次第です。) 尚、IMG要素のSRC属性にCGIを指定する事は可能です。 (アクセス解析サービスを行っているあるサイトがJavaScript無効時のアクセス解析にこの手法を用いています。そもそもアンカータグではアクセス解析になりませんし・・・。) (そもそもサーバ側で画像イメージだろうがHTMLファイルだろうか呼ばれた物以外にCGIを動かす事が可能ですから・・・。) ただ、ブラウザ側に画像イメージが送られてこないと、 ご提示の様な状態になりますがぁ~。 改めて、記述が指示されて通りに出来ているか確認し (望む結果が出ていないのて、正しく記述していますという思い込みは厳禁です。) CGIが適切に動いているか確認するしかないでしょう。 (まさかと思いますが、記述例を丸写しして 必要な書き換えを行っていないとかいうオチではないすよねぇ~。 一応、思いつく可能性を片端から・・・。)

THUBAN
質問者

お礼

ご回答ありがとうございました。 自己解決しました。 imgタグで、widthとheightを"0"指定することで、×表示を避けることができました。 あと、span style="background-image:urlを用いることでも、実現できました。 どうも、お手数おかけしました。

  • EUR
  • ベストアンサー率61% (29/47)
回答No.1

イメージタグで直接リンクを張ることは出来ません。 アンカータグで画像にリンクを張ることになります。 タグを以下のようにしてください。 <a href="http://hogehoge.com/accesslog.cgi?url=http://hogehoge.com/index.html"><img src="○○.gif"></a>

THUBAN
質問者

お礼

ご回答ありがとうございました。 しかし、リンクを張るのではなく、ブラウザ表示と共にアクセスログのスクリプトを実行させるために、便宜上(?)imgタグを使うことは、どのアクセスログCGIでも良く行っていることなのです。 リンクは、a hrefタグで張れますが、それではその部分をクリックしない限り、スクリプトが実行されないので、意味がないんですね。 で、この件は自己解決しました。 imgタグで、widthとheightを"0"指定することで、×表示を避けることができました。 あと、span style="background-image:urlを用いることでも、実現できました。 どうも、お手数おかけしました。