如何写一个Web服务器
针对web服务器:首先你要去了解HTTP协议,web server说到底就是一个遵循Http协议的应用程序。可以先写一个简单的,然后去关注一些high performance相关的, i/o 复用(epoll), event loop, non-blocking, C10k问题,tcp调优(tcp_cork, tcp_nodelay),高级I/O function(eg sendfile, writev, readv, mmap, splice, tee), 常用的服务端架构(推荐陈硕的Muduo C++那本书,不是让你看muduo, 而是他讲的一些思想、做法和框)
个人电脑(windows)可以作为服务器。
准备工作:
在局域网中只需知道自己在局域网的ip即可,互联网需要把个人电脑暴露在互联网下,有自己的公网ip。
一、作为web服务器
启动电脑iis信息服务,将制作好的网页文件放在信息服务站点目录下即可。iis仅支持asp或者aspnet,php需自行安装服务端应用程序。
二、作为ftp服务器
iis信息服务也有,亦可安装第三方软件。进行用户设置,权限设置即可完成。
三、作为软件服务器
自行编写服务端软件即可,较为专业。
如何用Java实现Web服务器 一、HTTP协议的作用原理
WWW是以Internet作为传输媒介的一个应用系统,WWW网上最基本的传输单位是Web网页。WWW的工作基于客户机/服务器计算模型,由Web 浏览器(客户机)和Web服务器(服务器)构成,两者之间采用超文本传送协议(HTTP)进行通信。HTTP协议是基于TCP/IP协议之上的协议,是Web浏览器和Web服务器之间的应用层协议,是通用的、无状态的、面向对象的协议。HTTP协议的作用原理包括四个步骤:
(1) 连接:Web浏览器与Web服务器建立连接,打开一个称为socket(套接字)的虚拟文件,此文件的建立标志着连接建立成功。
(2) 请求:Web浏览器通过socket向Web服务器提交请求。HTTP的请求一般是GET或POST命令(POST用于FORM参数的传递)。GET命令的格式为:
GET 路径/文件名 HTTP/10
文件名指出所访问的文件,HTTP/10指出Web浏览器使用的HTTP版本。
(3) 应答:Web浏览器提交请求后,通过HTTP协议传送给Web服务器。Web服务器接到后,进行事务处理,处理结果又通过HTTP传回给Web浏览器,从而在Web浏览器上显示出所请求的页面。
0条评论