在这里做了一些搜索之后,我发现几乎没有关于开发web服务器的任何问题。
我这样做主要有两个原因。作为一个附带项目,并了解更多关于开发服务器程序的信息。这不会变成一个有用的应用程序,更像是一个学习工具。
所以问题很简单。
指向有用站点的链接是受欢迎的,但不要链接到开源的工作项目,因为这是关于学习过程的。
发布于 2009-05-16 18:36:00
web服务器一开始是一段非常简单的代码:
因此,代码的大纲很简单。
现在,您需要处理一些复杂的问题:
处理多个连接的可能性也相对容易,有许多可能的选择。
运行程序实际上也相当容易。通常,您要为CGI目录定义一个特殊的路径;通过该目录具有路径的URL将路径名称解释为程序的路径。然后,服务器将使用叉/exec创建一个子进程,并将STDOUT连接到套接字。然后该程序运行,将输出发送到STDOUT,并将其发送到客户端浏览器。
这是基本模式;web服务器所做的其他一切只是在这个基本模式中添加额外的功能。
下面是其他一些源代码,例如代码:
它几乎没有做你真正想要的事情,但是简单地说,很难打败来自http://www.commandlinefu.com的http://www.commandlinefu.com
$ python -m SimpleHTTPServer
发布于 2009-05-16 18:34:23
首先,请不要让这成为一个有用的项目-获得安全的web服务器是非常困难的。
好的,下面是一些需要记住的事情:
祝你好运--这是一份很棒的工作。
发布于 2009-05-16 18:33:54
网络等是相当标准的公平,所以不要太担心这一点。(在大多数语言中都有几个“即时”的示例网络服务器。)
相反,专注于实际实现HTTP规范。你会惊讶于( a)你不知道的东西,和( b)有多少东西应该是符合HTTP的,实际上不是,但是伪装得很好。
然后你会惊讶于网络的工作。
当您完成HTTP时,请尝试实现IMAP。
https://stackoverflow.com/questions/872993
复制相似问题