Cで簡単なHTTPサーバーを作成する必要があります。ガイダンスはありますか?リンク?サンプル?
tiny httpd をご覧になることをお勧めします。ゼロから作成したい場合は、徹底的にread RFC 2616 にする必要があります。 BSD sockets を使用して、非常に低いレベルでネットワークにアクセスします。
以下をご覧になることをお勧めします。 クライアントおよびサーバー作成の実践ガイド
増分ステップで実装する必要があるのは次のとおりです。
HTTPサーバーは概念的にシンプルです。
サポートするHTTPの量によってはさらに難しくなります。POSTは、スクリプト、複数の要求の処理など、もう少し複雑です。
しかし、ベースは非常に単純です。
Mongoose (以前のSimple HTTP Daemon)はかなり良いです。特に、Windows、Windows CE、およびUNIXで埋め込みおよびコンパイルが可能です。
ポート80でTCPソケットを開き、新しい接続のリッスンを開始し、 this を実装します。目的に応じて、ほとんどすべてを無視できます。最も簡単な方法として、すべてのリクエストに対して同じレスポンスを送信できます。これには、ソケットへのテキストの書き込みが含まれます。
Nweb(NigelのWebサーバー)を見てください。「わずか200行のCソースコードを備えた小さな安全なWebサーバー[...]」:
https://drive.google.com/file/d/0B3msld7qnNOhN1NXaFIwSFU2Mjg/view?usp=sharing http://www.ibm.com/developerworks/systems/library/es-nweb/
この記事には、擬似コード、説明、およびコメントが含まれています。
編集:IBMのリンクが終了しました。ウェブページのPDFをGoogleドライブに保存しました。コードのダウンロードは次のとおりです。
https://drive.google.com/file/d/0B3msld7qnNOhSGZGdDJJMmY0VHM/view?usp=sharing
@ ankushagarwal がいくつかの変更を加え、GitHubにバージョンをアップロードしました: https://github.com/ankushagarwal/nweb
私はあなたが使用できる私自身を書きました。これはsqliteが機能し、スレッドセーフであり、UNIX用のC++で動作します。
分解して、C互換コードを使用できるはずです。
lighttpd のようなソースを参照することをお勧めします。
http://www.manning.com/hethmon/ -マニングの「Paul S. HethmonによるHTTPへの図解ガイド」は、HTTPプロトコルを学ぶのに非常に優れた本であり、誰かにとって非常に役立つでしょう。それを実装/拡張します。
Apache のように、プラットフォーム固有のソケット関数を使用してHTTPプロトコルをカプセル化します。
より多くの応答がある複製 があります。
まだ言及されていない候補の1つは、 spserver です。