• 締切済み

ApacheでCは使える?

こんにちわ。 今CGIについて勉強しています。 Perlをメインに勉強しているのですが、複雑な処理は得意なCでCGIを作成しようと思っています。 そこで、ApacheでCを使いたいと思っているのですが、 具体的な使用方法が分かりません。 Apacheの設定方法など詳細な説明をお願いします。

みんなの回答

  • ssk38
  • ベストアンサー率44% (22/49)
回答No.3

使えます。 perlが動作可能ならばCでも特に問題なく動くと思います。 コンパイル後の拡張子をcgiにすればいいです。 GETなどは環境変数で取ります。getenv("QUERY_STRING");とか。 出力すべきヘッダなどはperlと同じです。 標準出力に出します。

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

そのまんまのページがあるみたいですね。 検索すればかなりやってるサイトはあるみたいですね。 基本的に、apacheの設定でどうするということは 無いと思います。 問題になるのは、Cだと、そのOSとか環境に合わせてmakeしてやらないとだめってことでしょう。 当然windowsで作ったのはunixマシン上で動くはず無いですし。(よっぽどのことしないと。) HTMLのデザインとかを 簡単に変えようと思うとテンプレート的な代物がないと ちとつらいんです。 うーんここは横にスペース一個追加。 とかおもってもcompile。 うーんやっぱいらないとおもってもcompile。 面倒です。 テンプレート的な代物ほしいですよね~。 でも、CでCGI作るとかなりはやいんですよね~。 その魅力だけでもやる価値は十分すぎですからがんばってください。

参考URL:
http://www2k.biglobe.ne.jp/~motoi/cdecgi.html
全文を見る
すると、全ての回答が全文表示されます。
  • shige_70
  • ベストアンサー率17% (168/946)
回答No.1

OS上で普通に実行できればほとんどの言語が使えるはずです。Cはもちろん可能、シェルスクリプトもokです。 Windowsサーバならバッチファイルですら構わないかも知れませんが試したことはありません。 Apache自体の設定はデフォルトのままで、特殊な設定は必要ないはずです。(プロバイダのサーバなどでは逆に特殊な設定をしてCで書いたモジュールをCGIとして使えないようにしているところもあります) Cで書いたプログラムをコンパイルする時に.cgiという拡張子をつけた実行モジュールを作るようにして、あとは普通にCGIとして必要な用件を満たした出力をしてやればいいだけです(最初に Content-type: ~ と出力する等)

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

関連するQ&A

  • C言語のapacheの設定

    apacheを使うとC言語で作ったプログラムもCGIで動かせると聞きました httpd.confをいじるとC言語でも表示されるらしいのですがいじり方が分かりませんでした。 どのようにいじればC言語を動かせますか? apacheのバージョンはapache_1_3_12_win32です。 普通の(perlでの製作)cgiの拡張子のは動かせます。

    • 締切済み
    • CGI
  • Apacheの設定について

    WindowsXP SP2 のローカルでCGIを動作させるために  http://www.adminweb.jp/apache/ を参考に下記を試みました。 (1)Apache ダウンロード・インストール・接続確認   「http://localhost/」へアクセスして「It works!」表示確認    (htdocs ディレクトリの index.html) (2)ActivePerlインストール    perl -v perl -h で動作確認 (3)CGI用エイリアスの設定    ScriptAlias /cgi-bin/ "C:/SERVER/Apache/cgi-bin/" (4)以下の test.pl を C:/SERVER/Apache/cgi-bin/ に設置    ------------------------------------------------------    #!C:/Perl/bin/perl.exe print "Content-type: text/html;\n\n"; print "<html><body><h1>test cgi</h1></body></html>\n";   -------------------------------------------------------    http://localhost/cgi-bin/test.pl の実行で    「Internal Server Error」になってしまいます。 どこの設定が間違っているのか見当がつきません。 何卒ご指導宜しくお願い致します。

  • windows7へapache導入

    当方、超初心者です。 windows7、32bitにapache2.2をインストールしました。 多くのwindowsのapacheのhttpd.confの書き換えの サイトには パスの区切り記号に「/」を使っていますが、 これは「\」に置き換えなくては動かないんじゃないでしょうか? なぜwindows でapacheで「/」を使った説明をしてるか意味が分かりません。 同じくCGIの冒頭の#!C:/perl/bin/perlという欄は#!C:\perl\bin\perl と置き換えるべきなのしょうか?

  • Apacheの設定に関して

    Windowsの環境でApache、CGI、perlを用いた環境を構築 しようと考えています。 色々ホームページを検索してみましたが、詳細に書かれた ページが見つかりませんでした。 (以前はPHPを用いた環境は作成した事はあります。) 参考になるようなページがありましたら教えて下さい。 宜しくお願いします。

    • 締切済み
    • CGI
  • PerlからCへの値の受け渡し方

    こんにちわ。 今、CGIについて勉強している初心者です。 まだまだ勉強中の身ですが、一つ質問があります。 PerlからCへ値を引き渡すことはできるのでしょうか? 例えば、WEB上で値を取得する部分はPerlで作成し、受け取った値をCプログラムで処理して、その結果をまたPerlに返してやるといったことを考えています。 もし出来るなら、詳しく教えてもらえないでしょうか? ここに書ききれないというのであれば、簡単にでもいいので教えて下さい。 よろしくお願いします。

    • 締切済み
    • CGI
  • CGIのパス(Apache winで)

    初歩的な質問ですみません。 環境 windows2000 サーバー Apache/1.3.20 ActivePerl-5.6.1.626 をインストールが完了して、CGIを動作させようとしています。 ApacheでのHTML動作はできています。 CGIプログラムの一行目に #!/usr/local/bin/perl と記載されています。 その文字列を #!c:/bin/perl.exe に変更して現在動作させています。 しかし、ISPのHPスペースのperlへのパスは #!/usr/local/bin/perl なので、転送前に一行目を変更しています。 変更しなくても良いように ApacheでのCGIのパスを #!/usr/local/bin/perl で動作する方法を どなたか教えていただけないでしょうか? ちなみに Perlは[c:\bin]にインストールしてあります。 Apacheは[g:\apache]にインストールしてあります。

  • Apacheを入れたのにローカルでCGIが動かない

    こんにちは。今CGIの勉強をしています。perlを使っているのですが、サーバーにアップする前にローカルで動作チェックをしようと思い、ApacheとActivePerlをインストールしました。 その後、Apacheを起動して、ローカルのCGIファイルにアクセスしたのですが、ページを表示できませんと出てしまいます。 ping localhostはちゃんと通ります。 環境 OS:WindowsXP HomeEdition SP2 セキュリティーソフト:無し ファイヤーウォール:解除済み Apache設定 Network Domain 127.0.0.1 Server Name   127.0.0.1 Version2.0.58 ブラウザ:IE6.0 プログラム保存先:C:\Program Files\Apache Group\Apache2\htdocs ファイル名:hello.cgi(拡張子表示有にしている。.txtなどは無い) ActivePerl:Version5.6 保存先:C:\Perl\bin(C直下) コード #!C:/Perl/bin/perl print "Content-Type: text/html\n\n"; print "<html>\n"; print "<body>\n"; print "<h1>Hello World!</h1>\n"; print "</body>\n"; print "</html>\n"; exit; 参考にしたサイト http://perl.misty.ne.jp/01.html 以上よろしくお願いします。

    • ベストアンサー
    • CGI
  • CGIを使用するためのApacheの設定

    今HPを作っています。 そこでカウンターを作ろうと思ってPerlを勉強したのですが、 Apacheでファイルを送り、 CGIを実行しようとすると、 「ファイルのダウンロード」 とでて「実行」を押すとメモ帳でそのCGIファイルが開かれてしまいます。 これはApacheの設定(httpd.conf)が関係してるんじゃないかと思うんですが、 設定の仕方がよくわかりません。 教えてください。 OSはWinXPでバージョンは2.0.55.0です。

  • 「Apache」のCGI・SSI等の設定方法又は参考書籍

    Perl・CGI・SSIの勉強を始めようとしています。 「Perl/CGI辞典」という書籍を購入して学習を始めたのですが、Apacheのバージョンの違いに苦しみ、未だにプログラムの勉強に進めずにいます。  CGI・SSIを動作させる為の設定と、「/~xxxx(ディレクトリ名)/」の形式でディレクトリを指定することが出来るようにする設定を行いたいのですが、件の書籍やWeb検索で調べて回る限りでは、Apache 1.3系ベースでの説明が主で、私が自分のWinXP機にダウンロード出来たのは2.2.4でした。そういった書籍や解説サイトのhttpd.confの内容と違っていて、設定出来ませんでした。唯一出来たのは「http://localhost/cgi-bin/xxxx.cgi」という指定の場合に限りCGIが動作して、「http://localhost/cgi-bin/xxxx.shtml」から「xxxx.pl」を呼び出すことなどは駄目でした。  前置きが長くなってしまいましたが、教えて頂きたいのは「Apache 1.3.27」周辺のWinバージョンがダウンロード出来る場所(購入した書籍のバージョンに合わせる為)、あるいは、「Apache 2.2.4」以降のバージョンでの設定方法が説明されているWebサイトまたは書籍です。もちろん、この質問へのご回答の中でお教え頂けるくらいの情報量なのであれば、ここで教えて頂けると嬉しいです。 初心者でちんぷんかんぷんなご質問の仕方かも知れませんが、宜しくお願い致します。

    • ベストアンサー
    • CGI
  • Apacheの設定でHTML文が表示される

    VistaにApache2.2とPerl5をインストールしてCGIを使いたいのですが、CGIが起動しません。 「IT Works!」は表示されたのでインストールはうまくいったと思います。 おそらくhttpd.confの設定だと思うのですが、手元にある本がApacheのバージョンも前のものですしXP対応なのではっきりとはわかりません。 HTML文がそのまま表示される事の注意点やhttpd.confの書き換え方がわかるかたどうか教えてください!!! ----------------------------------- c:\Apache2.2\htdocs\tendays(1-1.cgi)←今回表示されないファイルです c:\perl

    • 締切済み
    • CGI
このQ&Aのポイント
  • MFC-650CDW複合機でクリーニングができないというエラーが表示されて、電源のON/OFFもできない状態になりました。解決法を教えてください。
  • MFC-650CDW複合機のクリーニングができない際に表示される「クリーニングできません」エラーについての解決法を教えてください。
  • MFC-650CDW複合機のクリーニングができないトラブルの解決方法についての情報が必要です。
回答を見る

専門家に質問してみよう