- 締切済み
SSI対応?のPerlがホームページに設置できない
フリーソフトを使用してホームページの画像を時間ごとに変えたいのですが、HTMLに埋め込む方法がわかりません。教えてください。 フリーソフトは下記の[ pho.lzh ] です。 http://www.01nni.com/free-b_6.html HTMLに下記のように記述しましたがどちらも動いてくれません。htmlはshtmlに拡張子を変えました。 <!--#exec cgi="http://xxxxx/cgi-bin/pho.cgi" --> <!--#exec cmd="perl http://xxxxx/cgi-bin/pho.cgi" --> なにがダメで動いてくれないのでしょうか? インフォシークのフリーのホームページを使用しています。ホームページビルダーを使用しています。 なんとか動かしたいです。または、違うフリーソフトで 時間ごとに画像が替えれるソフトがありましたら紹介してください。 でもまずは、上記のソフトを使いこなしたいです。 途中まで設置して動かないのは非常にくやしいです。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- hrm_mmm
- ベストアンサー率63% (292/459)
>やっぱり、インフォシークではSSIのCGIは設置が無理なんでしょうね。 せっかく、execをつぶしたのに、includeで実行出来てしまったら、セキュリティ強化にならないですからね。 そういえば、SSIカウンターが出来なくなった時に、iframeを利用する方法を使ったことがあるので、これが一番手っ取り早いかもしれません。 まず、pho.cgiの最後の方print文の手前に以下の一行を挿入 print "Content-type: text/html\n\n"; 表示したいhtmlファイルには、以下のタグ <iframe src="pho.cgi" width="20" height="20"></iframe> 表示出来るブラウザが限られてしまうのが難点ですけど。携帯向けでなければ問題ないかと思います。
- hikomin
- ベストアンサー率63% (40/63)
#execが不可であっても、#includeで対応出来る可能性があります。 <!--#include virtual="xxx.cgi"--> 或いは <!--#include file="xxx.cgi"--> です。
補足
<!--#exec cmd="http://xxxxx/cgi-bin/pho.cgi" --><BR> <!--#exec cgi="perl http://xxxxx/cgi-bin/pho.cgi" --><BR> <!--#include virtual="http://xxxxx/cgi-bin/pho.cgi"--><BR> <!--#include file="http://xxxxx/cgi-bin/pho.cgi"--><BR> の、どの記述をしても下記コメントが表示されました。 [an error occurred while processing this directive] やっぱり、インフォシークではSSIのCGIは設置が無理なんでしょうね。
- hrm_mmm
- ベストアンサー率63% (292/459)
>インフォシークのサーバはPerlもSSIも両方対応しています。SSIの場合はファイルをhtmlでなくshtmlにして下さいとも記載されていました。 インフォシークのフリーサーバーは、SSI対応だけど#execのみ不可です。 昨年11月のセキュリティ強化により#exceは使えなくなりました。 なので、imgタグのsrcから呼び出して、時間ごとに異なる画像を出力させるperlスクリプトを探せばよいかと思います。 JavaScriptで行うなら、以下のサイトあたりを参考に改造してみたら? 「イヌでもわかるJavaScript講座」 http://www.red.oit-net.jp/tatsuya/index.htm 「Step.50 アクセス毎に画像を変える」 http://www.red.oit-net.jp/tatsuya/java/kuji1.htm このサイトの質問掲示板では、サイト内のスクリプト改造に関する質問にも丁寧に答えて貰えますよ。
- inu2
- ベストアンサー率33% (1229/3720)
えっと、そのPerlがSSIの対応なのでしょうか だとしてもインフォシークのサーバがSSI対応していないと意味無しです 時間ごとに画像を切り替えるのはJavaScriptで簡単に対応できますので、そちらの方に質問してみてください ホームページビルダーがどうのこうのというレベルではないです (使ったことないので自動的にJavaScriptを生成してくれるかどうかは分かりません)
補足
インフォシークのサーバはPerlもSSIも両方対応しています。SSIの場合はファイルをhtmlでなくshtmlにして下さいとも記載されていました。 JavaScriptで簡単に対応できるとのことですが、具体的にどのページを参考にすればよいのでしょうか?
補足
pho.cgiには下記の通りprintの前に、教えていただいたprint文を追記しました。 print "Content-type: text/html\n\n"; print"<img src=$pho>\n"; htmlは下記の両方を試してみました。 <iframe src="http://xxxxx/cgi-bin/pho.cgi" width="200" height="200"></iframe><BR> <iframe src="pho.cgi" width="200" height="200"></iframe> が、だめでした。 フレームが表示されるのですが、中にはインフォシークのトップページが表示されています。 もうお手上げでしょうか?記述が間違っていますか? 記述が間違っていないようであれば、あきらめます。