• 締切済み

CGIを実行する方法

ホームページに来訪者があったとき、 必ず指定のCGIを実行する方法を調べています。 今、取り入れてる方法は <head></head>の間に、 <script src="~.cgi"></script> と記述して指定しています。 この他によい方法があれば教えてください。 それと、今取り入れてる方法の問題点の指摘などよろしくお願いします。

みんなの回答

  • the845t
  • ベストアンサー率33% (246/743)
回答No.3

そのページ自体をCGIにするか、 フレームやインラインフレームで内包するかとか? 他には使えるのであればSSIを使うとか。

noname#10831
質問者

お礼

回答ありがとうございます なるほど~フレームという手もありましたね。

全文を見る
すると、全ての回答が全文表示されます。
  • estea
  • ベストアンサー率44% (39/87)
回答No.2

'必ず'実行させるのは結構大変かも。 <meta> の refresh で cgi ページに飛ばすのが一番確立が高そう。もちろんできない場合もあるけど。 img タグもいいと思うけど画像を読み込まない/読み込まない設定になっているブラウザはあるからねぇ。

noname#10831
質問者

お礼

回答ありがとうございます つい最近までrefresh使ってました。

全文を見る
すると、全ての回答が全文表示されます。
noname#15014
noname#15014
回答No.1

<img src="~.cgi" width="1" height="1">

noname#10831
質問者

お礼

回答ありがとうございます ムムム・・・これはぼくも以前使ってた技です

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • PHPをCGIとして実行する方法

    PHPをCGIとして実行する方法 現在PHP(モジュール版)にて開発を行っているのですが、 仕様上.htaccessを使用してcgi-binディレクトリ内にあるphpファイルをCGIとして 実行しなければならなくなりました。 下記の記述方法だと500エラーが発生してしまい、大変困っています。 <Directory "/usr/~(任意のcgi-binディレクトリのフルパス)~/cgi-bin"> AddType application/x-httpd-cgi .php </Directory> 因みに.htaccessはcgi-binディレクトリの1階層上に設置しています。 単に「AddType application/x-httpd-cgi .php」を記述する分には誤作動は起さないのですが、出来れば指定のディレクトリ内だけで指定したいと考えています。 もし思い当たる点がありましたら、ご教授お願い致します。 下記に環境を記しておきます。 【環境情報】 OS:FreeBSD 6.2(レンタルサーバ) PHP:5.2.4

    • ベストアンサー
    • PHP
  • 別サーバーのcgiを実行させる

    あるサーバーで動作しているcgiスクリプトから、別のサーバーに置いてあるcgiスクリプトを実行させる方法はあるでしょうか? require 'http://…/…/test.cgi'; としても実行することは出来ませんでした。 googleで検索したところrequireではURL指定ができないと解説しているサイトがありましたので、requireを使わずに、(CGI.pm等の標準モジュール(?))なども使わないで他のサーバーに設置したcgiを動作させる方法があれば、教えていただきたいです。

    • ベストアンサー
    • CGI
  • 拡張子を省略してcgiを実行するには?

    拡張子を省略してcgiを実行したいと思ってます。 例) hoge/hoge.cgi?a=1 ↓ hoge/hoge?a=1 .htaccessに以下のように記述してみましたがうまく行かず、悩んでいます。 ForceType cgi-script cgi 良い方法をアドバイスお願いします。

    • ベストアンサー
    • Perl
  • HTML上(javascript)からCGIを実行する方法

    javascriptから外部実行ファイル(javascriptファイルではなくperlなどのCGI) を実行する方法を探しています。 下記のようにindex.htmとtest.cgiファイルを用意して、index.htm内の javascriptから外部cgiを実行させ、cgiの結果(test.cgiでは単に 『test』と表示するのみ)を表示したいと考えています。 利用増ですが、cgiやssiが使用できないサーバにindex.htmを置いて、 cgiが使用できるサーバ上のcgi結果を取得したいものです。 通常のcgiのように、1ページでcgi結果を表示するものではなく、 HTMLファイルの一部にcgi処理結果を表示させたいものです。 そもそも、SSIを使用しなければ下記のようなHTML内にcgiなどの 実行結果を表示する事は出来ないのでしょうか。 よろしくお願い致します。 ※下例のプログラムではcgi結果は表示されませんでした・・・。 ---<index.htm>---------------------------------------- <HTML> <BODY> <SCRIPT language="Javascript" src="http://xxx.xxx.xxx.xxx/test.cgi"></SCRIPT> </BODY> </HTML> ---<test.cgi>---------------------------------------- #!/usr/bin/perl print "test"

  • javascriptでCGIを実行するには

    htmlタグ <form method="post" action="・・・/cgi-bin/gogo.cgi"> <input type="text" name="name" size="20" value=""> <input type="submit" value="送信"> 上記で送信ボタンを押すとcgi側でnameを受け取れますが、 以下の場合はcgiは動作するのですが、nameを受け取れません、 受け取れる方法を教えてください。 <script type="text/javascript" language="javascript"> <!-- function gogo(){ document.write('<img src="・・・/cgi-bin/gogo.cgi">'); } // --> </script> </head> <body> <form method="post" action="javascript:gogo()"> <input type="text" name="name" size="20" value=""> <input type="submit" value="送信"> </form>

  • x.htmlが呼ばれたらx.cgiを実行

    するように(実行結果は表示させないでファイルに格納) するにはx.htmlにどのようにx.cgiのパスを指定したらいいでしょうか? <imag src="x.cgiのパス"/> を置くとブラウザに「読み取りミス」画像が表示されます 何も表示させない場合にはどうしたらいいのでしょうか?

    • ベストアンサー
    • CGI
  • NFS経由ではcgiの実行はできない?

    NFS経由ではcgiの実行はできない? NFSでマウントしたディレクトリへのアクセス(具体的にはcgiの実行)を試しています。 host1とhost2(両方とも、OSはCentOS5)を作っており、 host1に/home/cgi/sample.cgiがあり、/etc/exportsでhost2に対してexportしています。 host2にはApacheがインストールされています。 host2でhost1の/home/cgiを/www/cgiとしてマウントしています。 host2で、httpd.confには ScriptAlias /cgi-bin/ /www/cgi/ と記述しています。そして、 http://localhost/cgi-bin/sample.cgi とすると、うまくcgiが実行されません。 一方、host1でApacheをインストールして同様の設定を施して、 http://localhost/cgi-bin/sample.cgi を実行しましたらうまくcgiが実行できました。 NFSでマウントしたcgiなどのスクリプトなどは実行できないものなのでしょうか?

  • cgi をジャバスクリプトで呼び出す

    配布されているCGIで、ページ内にそれを表示したいときに、SSIが使えないホームページでも、<SCRIPT SRC="./****.cgi"></SCRIPT>とすればページ内に表示されるものがあります。 このようなことは、すべてのCGIで可能なのでしょうか?また、ページ内に表示するためには、CGIのほうで、何らかの設定をしないといけないのでしょうか? よろしくお願いいたします。

  • apacheでcgi

    AddHandler cgi-script .cgiを有効にして.htaccess の中にOptions +ExecCGIAllを記述してhttpd.confのowOverride Options としてcgiを実行しようとしたら下記エラーになりました。 [Thu Nov 15 11:16:54 2001] [error] (13)許可がありません: exec of /home/jin/WWW/cgi-bin/tslbbs.cgi failed [Thu Nov 15 11:16:54 2001] [error] [client 192.168.0.9] Premature end of script headers: /home/jin/WWW/cgi-bin/tslbbs.cgi それで、 #AddHandler cgi-script .cgi として、 <Directory /home/*/WWW> Options ExecCGI </Directory> にしたら cgiのソースが見えてしまいます。 cgiのPermissionsは755になっております。 ScriptAliasで/cgi-bin/ /home/*/WWW/cgi-bin/を記述してOptions ExecCGIにしてもソースが見えてしまいます。 cgiを実行させるのにはどうすればいいのでしょうか?? (以前Linuxを良くわからないときに(今でも解っていませんが・・)同じような質問をここに挙げてその時は単純な自分の間違いで動かなかったのですが単純なソースのミスでした。それで今度はLinuxをインストールをしなおしたら動かなくなったのです。 http://apachetoday.com/news_story.php3?ltsn=2000-06-05-001-10-NW-LF-SW 等覗いてそれをやっても動かないのです。 多分単純なことなのかもしれませんが行き詰まって困っております。 昨日の質問でユーザーのHTMLが見れないのはURLの指定で最後に'/'をつければ問題なく見れました。今はイントラネットでLinuxを動かしているのですが、実際のインターネットでは最後の/は入れたり入れなかったりでも問題なく見れるのですが、正しくは最後に/を入れるみたいですね。)

  • xamppを使用してCGIが実行できなくて困っています。

    こんにちは。自分で作ったホームページにアクセスカウンターや掲示板を設置したいと思っています。 そこで、xamppを使用し、CGI(アクセスカウンターや掲示板)を設置したいのですが、できません。設置の仕方、設置場所などお分かりの方、教えてください!! いろんなサイト(xamppのホームページも含め)を探してみて、「httpd.conf」の中を変えると書いてあったので、そのとおりに変えてみました。 (DocumentRootの下に <Directory "C:/www"> AllowOverride All Options All </Directory> を加えるといったもの)しかし、実行できず、サーバエラーが出ます。 設置場所:xampp/htdocs/test.cgi アクセス:http://localhost/test.cgi エラー内容:Premature end of script headers: test.cgi [test.cgi]↓↓ #!/usr/bin/perl print "Content-type: text/html\n\n"; print "<html><head>"; print "<title>TEST</title>; print "</head><body>\n; print "TEST<br>"; print "</body></html>\n"; [httpd.conf]の変更点 DocumentRoot "C:/xampp/htdocs"の下に <Directory "C:/xampp/htdocs"> AllowOverride All Options All </Directory> を追加。 分かりづらかったり、言葉が足りなかったらすみません。できなくて困ってます。。。どうかお願いします。

    • 締切済み
    • CGI