How do I write a web server in C/C++ on linux [closed]

From top-down, you’ll need to know about:

  • HTTP Protocol
  • TCP server – BSD socket programming
  • writing a basic Unix daemon (persistent service)
  • process management (fork)
  • parsing text (read a configuration text file)
  • file handling (I/O)
  • debugging C / C++ programming 🙂

So you will have to learn about writing a basic Unix application, BSD socket programming for the TCP/IP network programming, and the HTTP protocol.

Commonly used texts include:

Unix application development:

  • Advanced Programming in the Unix Environment, Stevens & Rago
  • Advanced Unix Programming

TCP/IP (sockets) programming:

  • Unix Network Programming, Volume 1 Stevens et all
  • TCP/IP Illustrated, Stevens
  • Ineternetworking with TCP/IP, Volume 3, Comer

HTTP Protocol

  • RFCs including
  • RFC 2616 for HTTP v1.1,
  • RFC 2068 for pre-v1.1
  • plus others depending on support (compression, URI / URL) and completeness

Leave a Comment