这里我们讲一下怎样把自己的电脑变成一台网站服务器来使用, 把自己的电脑用作网站服务器并不难。
无需别的硬件或软件就能够轻松实现, 只需利用Windows95OSR2中提供的"个人Web服务"(PersonalWebServer)就可以。
如果想功能更加多一些的话, 就需要用 WindowsNTServer4.0。 您甚至还可以创作自己的HomePage发布信息、进行文件传送或开展网上讨论等等。
总言而之, 过去我们只能在网络上看见的, 现在全部都可以自己来完成。
一、Web服务器功能的设置 安装完Windows95OSR2后, 应该考虑让别人用什么样的方法来访问我们的Web服务器, 如用电话拨号来访问, 就应该安装像Plus之类的电话拨号服务软件。
如果只能提供电话拨号服务, 建议采用后一种方案, 即用 WindowsNTServer4.0, 因为它能提供256条电话线同时拨号。
当然我们也可以自己先连上一个公共的网络服务器, 让别人从这个服务器访问我们的Web服务器, 但必须要有一个固定的IP地址 , 并在这个服务器的DNS(域名服务器)中注册。
如果只有IP地址, 但没有在DNS中注册, 那么局域网以外的用户就不能访问该个人Web服务器。
不管用什么方式, 我们都要为计算机设置TCP/IP协议和Web个人服务器功能。
这可以在"网上邻居"中设置。
方法非常简单, 只需在"网上邻居"的"属性"中添加TCP/IP协议, 然后在"TCP/IP属性"中的"IP地址"标签中选择"指定IP地址"并输入正确的 IP地址。 在"DNS配置"标签中选择"使DNS无效"。
安装个人Web服务器的方法如下:
(1)在"网上邻居"的"属性"对话框"配置"标签中单击"添加"按钮;
(2)在弹出的"选择网络组件类型"对话框中, 在"厂商"栏中选择"Microsoft", 在"网络服务"栏中选择"PersonalWebServer", 然后单击"确定"按钮。这时Windows95将自动配置系统。 机器启动后, 在Windows95所在驱动器的根目录下面将建立一个名为Webshare的子目录, 其下还有三个子目录:WWWroot、Scripst和FTProot, 分别存放HTML超文本文件、CGI脚本文件和FTP文件传送文件。
安装完成后, 先可以进行一下测试。 启动机器, 在"控制面板"中双击"个人Web服务器"图标, 在"服务"选项栏中分别选择"HTTP"和"FTP"并单击"启动", 这样就开启这两项服务功能。 也可以设成"自动方式", 这样每次开机后, 就自动启动Web服务器功能。 启动Web服务器功能后, 我们可以打开 WWW浏览器(如IE), 在地址栏中键入我们的IP地址, 马上就会出现Web个人服务器中自带的一个主页。
然后可以在一个局域网中(如Intranet 网)进行测试。 方法是在网上的其他计算机中, 用WWW浏览器键入用作个人Web服务器的计算机的注册名, 这时应当出现同样的主页。 如果不能看见, 可以在个人Web服务器上用DOS方式运行一下winipcfg命令, 看一看这台计算机的IP地址是不是正确。
下面介绍怎样在WindowsNTServer4.0中文版中设置Web服务器功能。
WindowsNTServer4.0中文版中的Web服务功能通过 IIS2.0(InternetInformationServer2.0)来实现。 在安装WindowsNTServer4.0中文版的过程中 , 系统会提示"是否安装IIS2.0?", 应回答"安装"。 这样启动WindowsNTServer4.0中文版后, 就有Web服务器的功能。 和 Windows95中的情况一样, 在WindowsNT中也同样存在用什么样的方法让别人访问Web服务器的问题。
如果是在局域网中, 要安装网卡、设置协议及IP地址等。 如果准备用调制解调器让别人拨号访问, 则要安装调制解调器、电话线路。 还要在"服务项目"中添加"RAS远程服务"功能, 并在这个功能的"属性"中设置协议等等。 如果对这些设置不太清楚的话, 可以参考有关WindowsNT的书籍。
安装完成后, 可以按照前面在Windows95OSR2 中的方法进行一下测试, 看看能不能在另外的计算机中用WWW浏览器看到IIS2.0提供的一个主页例子。
二、制作自己的主页 要制作主页, 先要安装一些必要的网页制作软件, 笔者使用的是FrontPage97。
先把个人Web服务器中自带的主页修改成自己的主页。
方法是进入这个主页的目录(Windows95在Webshare目录的WWWroot子目录中, WindowsNT在InetPub目录的WWWroot子目录中), 找到default.htm文件双击打开后, 选中工作条中的"编辑", 系统会自动调出FrontPage97, 这时就可以发挥自己的才能进行一番设计。
在这个主页中, 我们能够向外发布消息, 让别人下载放在Webshare目录下FTProot子目录中的文件, 但是还不能实现双向交流, 接收访问者的信息。
三、安装CGI系统 要使Web服务器能为别人提供"写"的功能, 必须在服务器上安装CGI(通用网关接口)系统。
通用网关接口是一个信息服务器主机对外信息服务的标准接口(见图2)。
事实上, 任何一种程序语言所设计的应用程序可以在服务器主机上执行, 并利用CGI接口来传送应用服务信息, 皆称之为"CGI程序语言", 而用这种语言编写的CGI程序又被称为"脚本"。
现在常用的有Shell、VB、C/C++、Java、Perl等语言。
以PerlforWin32为例, 您可以从Internet上下载自解压文件pw32i316.exe, 然后安装。
我们先来看看怎样在Windows95OSR2版中的"个人Web服务"上安装Perl系统: 启动Windows95后, 用鼠标双击下载下来的pw32i316.exe, 自解包就会自动运行解压并进行安装, 整个安装过程可以全部回?quotY"完成。
完成后一般会在C盘根目录下建立一个名为Perl的目录, 并在其下建立几个子目录, 其中在Bin子目录中有一个名为 perl.exe的可执行程序, 这就是Perl系统的主程序。
但是这时的Perl主程序并不能运行按Perl语言方法编写的CGI脚本, 所以还必须修改 Windows95的注册表。
方法是先运行注册表编辑器regedit, 然后依次打开"HKEY_LOCAL_MACHINE \System \Currentcontrlset \Services \W3svc \Parameters \ScriptMap\", 加入".pl'C:\PERL\BIN\perl.exe%s%s'"。
退出注册表文件后, 重新启动计算机, 然后进入Perl 目录下的Eg子目录, 从中任选一个扩展名为.pl的文件并双击, 这时系统会出现一个列表窗口, 询问使用什么程序来打开这个文件, 这时应该在可选的可执行文件列表中找到"perl"(如果找不到可以在"其他"项中按路径来指定), 并选定"始终使用该软件打开这种类型的文件"项, 单击"确定"即可。
在 WindowsNTServer4.0中的安装过程与Windows95基本一样, 只是修改注册表时应运行regedit32, 加入的内容为:".pl:REG_SZ:C:\Perl\Bin\perl.exe%s%s"。
安装完成Perl系统后, 我们就可以写一个CGI脚本试一试。
下面的例子中, 程序1是用Perl语法规则写成的一个CGI脚本, 这是一个 ASCII文本文件, 可用一般的记事本来编写, 完成后用sample.pl文件名存盘。
注意不论是在WindowsNTServer4.0还是在 Windows95中, 都应把这个文件放在Scripts的子目录中。
程序2是相应的HTML文件, 这个文件应放在WWWroot子目录中。
接下来我们可以运行测试。
打开WWW浏览器, 在地址栏中键入:http://您的Web服务器名/程序2的文件全名, 会出现一个填写界面(见图 3), 当输入数据完成后, 单击"确定"按钮, 马上就会把您填写的这些内容写在屏幕上(见图4)。
当然, 我们也可以从网上的另一台计算机来测试。 这仅仅是一个很简单的例子, 要想得到更好的结果(如问卷调查、网上留言、BBS等), 就要进一步学习一些有关Perl语言的知识。
总而言之, 通过不懈努力, 完全可以使我们的个人Web服务器达到专业水平。如何把自己电脑设置成服务器
服务器所用到的知识:TCP/UDP,最基本的;
并发——你可以选择使用select、poll,或者是多线程、多进程:如果你使用多线程,那么就必须使用同步技术——信号量、互斥体、条件变量的一种或几种,并且对于多线程技术,你还需要考虑使用进行线程分离与合并;
如果你使用了多进程,那么同步技术就不是你需要考虑的了,你需要考虑的是进程相关的问题了,你是使用fork还是vfork,你该如何处理客户端的请求,如何处理客户端断开连接后保证能够处理完数据并且没有僵尸进程产生,你还需要考虑高并发的问题;
你发送接受数据的时候,采用何种方式,是阻塞的还是非阻塞的,还有连接超时、重传等问题
你是选择TCP还是UDP,如果选择UDP你可得忙了,需要你自己去进行重传验证,模拟TCP的三次握手,保证数据不会丢失,保证数据的有序性;
还有其他很多需要你考虑的,以上都是指在Linux下的C++,本人对windows C++不了解。
推荐书目:UNIX高级环境编程,UNIX网络编程,卷一。C++只不过是你使用这些技术的方式,不管你使用C还是C++,你都可以使用从这两本书中学习到很多有用的知识,但是不能保证你就可以写出高质量的服务器程序。
服务器没有固定的程序,服务器开发程序也不是你对服务器这样片面的理解,我对边用一个电脑也可以作为数据终端,也可以把它作为服务器。服务也不仅仅是些数据终端,也可以是任务订阅,也可以是文件服务器,也可以做分布式管理。做一个简单的场景,聊天系统,我们需要架设服务器做socket服务端,他可以指派客户端内网穿透点对点通信,也可以实现视屏文件传输,聊天字符串传输;做一个孪生动画,我们需要关心前端数据从哪里来,订阅MQT服务或者Socket服务,后端引擎和数据中心需要服务器支撑;做一个文件更新服务器,Tomcat更新服务器要存储文件,供网络下载更新......
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)