-PR-
解決
済み

C言語で作ったプログラムをCGIで動かすには

  • 暇なときにでも
  • 質問No.96801
  • 閲覧数373
  • ありがとう数5
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 61% (37/60)

C言語で作ったプログラムをCGIで動かすにはどうすればいいのでしょうか?

サーバ側になにをアップし、ブラウザ側で何を呼び出せばいいのかわかりません。
EXEファイルの拡張子をcgiにしても
ダウンロードされるだけだったし(当たり前ですか?)。

ちなみにサーバは会社のサーバを使っていて、CGIも使えるはずです。
よろしくお願いします。
通報する
  • 回答数4
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.3
レベル12

ベストアンサー率 41% (324/772)

Windowsの様子なので、IISかapache for W32
あたりでしょう。
サーバ側の設定不足です。

まず、Windowsなのでexeはexeのままでないと、
実行できません。

IISなら、cgiファイルはサーバ上の「Scripts」
ディレクトリの下に置きます。

使うときは
<a href="/Scripts/abc.exe">ほげほげ</a>
の様にhtmlの中に記述します。

IISの設定的には、cgiファイルを置くディレクトリ
は、実行アクセス権として
「スクリプトおよび実行可能ファイル」という
設定が付いている必要があります。

インターネットサービスマネージャの画面で
プロパティを見てればなんとなく気づくと思います。

apacheならhttpd.conf内のWcriptAlias設定をします。
お礼コメント
tomo5

お礼率 61% (37/60)

Scriptsのフォルダにおいたら実行できました!
ありがとうございます。
投稿日時 - 2001-06-28 16:16:32
-PR-
-PR-

その他の回答 (全3件)

  • 回答No.1
レベル10

ベストアンサー率 30% (49/162)

よくわかんないんですが、CGIって、Parlとかで 組むものじゃないんですか? ...続きを読む
よくわかんないんですが、CGIって、Parlとかで
組むものじゃないんですか?
補足コメント
tomo5

お礼率 61% (37/60)

Parlのほうが簡単なんですけど、jubakoさんの言うとおり、ソースが美しくないし、上司がCでやれって言うから…。すいません。
投稿日時 - 2001-06-28 16:07:06


  • 回答No.2
レベル8

ベストアンサー率 40% (18/44)

サーバはWindowsNT系と仮定してお話します。 「.exe」ファイルを「.cgi」にする必要はありません。 IISを起動させ、作成されたexeファイルを格納しているパス、あるいはそのexeファイルそのものに実行権限を与えないと出来ません。 (確か、スクリプトに対する権限だったような・・・) この、実行権を与えないとダウンロードされるだけとなってしまいます。 また、作成されたexe ...続きを読む
サーバはWindowsNT系と仮定してお話します。

「.exe」ファイルを「.cgi」にする必要はありません。

IISを起動させ、作成されたexeファイルを格納しているパス、あるいはそのexeファイルそのものに実行権限を与えないと出来ません。
(確か、スクリプトに対する権限だったような・・・)
この、実行権を与えないとダウンロードされるだけとなってしまいます。

また、作成されたexeファイルがどんな内容を返すのかは知りませが、結構複雑ですよ。
私はDelphiでCGIを動かしていますけど結構苦労しました。
お礼コメント
tomo5

お礼率 61% (37/60)

「.exe」ファイルを「.cgi」にしたことは忘れてください☆
ほんとなにやってんだか…。

ファイルを置く場所を間違っていたみたいです。
ありがとうございました。
投稿日時 - 2001-06-28 16:11:03
  • 回答No.4

CでCGIを組む場合には、 ソースファイルをサーバにアップしてから、 サーバー上でtelnetを使ってコンパイルします。 これは、サーバーが通常Unixであるために、 Windows上でコンパイルしたものでは使えないからです。 具体的な方法に関しては、 参考URLを見てください。 #1の方へ。 CGIはPerl,C,PHPなどなどいろいろありますよ。 Perlはプログラム未経験者 ...続きを読む
CでCGIを組む場合には、
ソースファイルをサーバにアップしてから、
サーバー上でtelnetを使ってコンパイルします。
これは、サーバーが通常Unixであるために、
Windows上でコンパイルしたものでは使えないからです。

具体的な方法に関しては、
参考URLを見てください。

#1の方へ。
CGIはPerl,C,PHPなどなどいろいろありますよ。
Perlはプログラム未経験者にはちょうどいいですが、
経験者にとっては非常に汚いものなんです。
お礼コメント
tomo5

お礼率 61% (37/60)

回答ありがとうございました。
投稿日時 - 2001-06-28 16:17:25
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ