12
Common Gateway Interface(CGI)とは何ですか?
CGIはCommon Gateway Interfaceです。名前が示すように、それはすべての「共通」ゲートウェイインターフェイスです。それは名前からとても些細で素朴です。私はこれを理解していると感じ、この言葉に出会うたびに感じました。しかし率直に言って、私はしませんでした。私はまだ混乱しています。 私はWeb開発の経験を持つPHPプログラマーです。 ページのユーザー(クライアント)リクエスト---> webserver(-> embedded PHP interpreter)---->サーバー側(PHP)スクリプト---> MySQLサーバー。 ここで、私のPHPスクリプトがMySQLサーバー、MATLABサーバー、その他のサーバーから結果をフェッチできるとしましょう。 では、PHPスクリプトはCGIになりましたか?Webサーバーと他のすべてのサーバー間のインターフェースのためですか?知りません。CGIをテクノロジーと呼んだり、CGIをプログラムや他のサーバーと呼んだりすることもあります。 CGIとは正確には何ですか? /cgi-bin/*.cgiどうしたの?これどうしたの?cgi-binサーバー上のこのディレクトリが何のためにあるのかわかりません。なぜ* .cgi拡張子が付いているのかわかりません。 Perlが常に邪魔になるのはなぜですか。CGI&Perl(言語)。また、これら2つがどうなっているのかもわかりません。ほとんどの場合、私はこの2つを「CGIとPerl」の組み合わせで聞いています。この本は、Perlを使用したCGIプログラミングの優れた例です。「PHP / JSP / ASPによるCGIプログラミング」をしないのはなぜですか?私はそのようなものを見たことがない。 CでのCGIプログラミングは、私をとても混乱させます。「Cで」?? マジ?なんて言えばいいのか分からない。私はただ混乱しています。「Cで」?? これはすべてを変えます。プログラムをコンパイルして実行する必要があります。これは私のWebプログラミングに対する見方を完全に変えます。いつコンパイルしますか?プログラムはどのように実行されますか(マシンコードになるため、独立したプロセスとして実行する必要があるため)。どのようにWebサーバーと通信しますか?IPC?ソケットプログラミングを使用してすべてのサーバー(私の例ではMATLAB&MySQL)とのインターフェースをとっていますか?道に迷いました!! CGIは非推奨になり、使用されなくなったと人々は言っています。そうですか?最新のアップデートは何ですか? かつて、HTTP PUTリクエストにWebサーバー(Apache HTTPD)へのアクセスを許可しなければならない状況に遭遇しました。その長いバック。だから、私が覚えている限り、これは私がやったことです: Apache HTTPDの構成ファイルを編集して、すべてのHTTP PUTリクエストを一部に渡すようにWebサーバーに指示しました put.php(このPHPスクリプトを作成する必要がありました)。 put.phpを実装してリクエストを処理します(ファイルを上記の場所に保存します) 私はCGIスクリプトを書いたと人々は言った。真剣に、私は彼らが話していることの手がかりがありませんでした。 私は本当にCGIスクリプトを書いたのですか? 私の混乱が何であるか理解していただければ幸いです。(自分自身がどこで混乱しているかわからないからです)。できるだけ簡単に回答してください。派手な専門用語は本当に理解できません。少なくともこの場合はそうではありません。 編集: この素晴らしいチュートリアル「CGIプログラミングは簡単です!」を見つけました。-CGIチュートリアル。概念を可能な限り簡単に説明しています。この記事を読んだ後、「CでのCGIプログラミング入門」を読んで、実際のコードサンプルで理解を深めることができます。このチュートリアルへのリンクをウィキペディアの記事に追加しました:http : //en.wikipedia.org/wiki/Common_Gateway_Interface
745
cgi