文/陈嘉州
[典型应用]
一家销售公司,业务员分布在全国各地,需要与公司保持畅通联系。公司包月制上网,每天上班后开机,拨号上网,使用“门户网页”作为登录验证画面,允许业务员用密码作为身份验证登录数据库。因为“服务器”(本地硬盘)在公司内部,每次访问都有记录,并且固定网址除公司内部人员使用外,只有部分业务客户登录访问,数据流量较小,安全性较 高。公司几乎无额外支出,上网的主机和上网费用都没有增加,实现了拥有具备CGI权限的独立服务器。
网络财金站免费提供一种让拨号上网没有固定IP地址的用户拥有固定网址的服务,这就是“门户网页”,针对不同的需求,可以实现免费拥有CGI网站的梦想。
拥有CGI调试环境的梦想
两年前你拥有个人网页是一件很值得自豪的事,今天,如果你再告诉别人:“我有一个介绍自己的个人网页”,那就太“土”了。但如果你说:“我的网站拥有CGI权限”!OK,你够“酷”!
发源自UNIX环境的CGI脚本语言PERL,是拥有CGI权限的利器。像任何一门编程语言一样,PERL的学习也必须依赖实际的编程训练。怎样拥有一个CGI调试环境呢?
你可以安装UNIX或Linux操作系统,经过一些必需的设置后你就可以拥有一个使用PERL的CGI调试环境;或者你付款购买虚拟主机CGI权限。如果你是一个喜欢简单、实用的人,不喜欢这些复杂的、付费的解决方案,梦想在天天使用的Win98下轻松拥有CGI调试环境,网络财金站推荐你安装Sambar44软件。
安装:
安装文件Sambar44.zip可以从sambar网站下载,也可以直接从网络财金站下载,压缩文件大小约为4.3MB。下载后将其解压至一临时目录,运行setup.exe进行安装,安装过程一路回车即可。安装结束就会生成一个快捷方式“Sambar Server 4.4”图标,双击此快捷方式就可以启动www服务,也可以直接运行C:sambar44inserver.exe程序启动服务。
运行:
服务启动后在屏幕托盘位置就会出现一个“Sambar Server is Active”图标,双击之就会出现监视画面。在这个画面中有服务器提供的Web服务端口号(80)、服务器IP地址、服务器的硬盘目录(c:Sambar44)、网络连接数、访问本地Web服务的每条记录(来访IP、访问文件、数据流量)等信息。三个按钮分别是“clear”(清除当前监视信息),“pause”(暂停服务),“hide”(隐藏监视画面)。
访问:
在C:sambar44docs目录下存放的是HTML文件,系统默认的index.html文件是管理员登录界面,建议将此文件改名存盘,然后重新编辑自己的index.html文件(直接将自己在免费网站的html文件拷贝到该目录下即可)。在浏览器的地址栏输入“http://127.0.0.1”或者输入“http://localhost”就可以像访问免费个人网站一样看到初始画面了。
最重要的就是在c:sambar44i-bin目录下可以放置用perl语言编写的CGI程序,也就是说,你已经拥有了CGI调试环境!需要注意的是cgi程序要用“.pl”做扩展名,让docs目录下的html文件的表单程序指向本目录下的cgi程序,调用的时候要用类似“../cgi-bin/test.pl”的相对路径。让我们看一个具体的演示:
例子:
在C:sambar44docs目录中编辑index.htm文件如下:
<html>
<head> <title>我的cgi网站</title></head>
<body><center>
<form method="post" action="../cgi-bin/test.pl">
您的名字:
<input type="text" size="20" MAXLENGTH=20 name="id"><br>
<input type="submit" value="看看我的网站!">
</form>
</body>
</html>
在C:sambar44i-bin目录中编辑test.pl文件如下:
(注意:在c:sambar44i-bin目录下建一新子目录date)
#!/usr/bin/perl
read(STDIN, §buffer, §ENV{'CONTENT_LENGTH'});
@pairs = split(/&&/, §buffer);
foreach §pair (@pairs) {
(§name, §value) = split(/=/, §pair);
§value =~ tr/+/ /;
§value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex(§1))/eg;
§in{§name} = §value;
}
§ip=§ENV{'REMOTE_ADDR'};
open(TITLES,">>./date/newboy")|| die §!;
print TITLES "§in{id}|§ip
";
close(TITLES);
print "Content-type: text/html
";
print <<EO;
<html>
<title>wlcjz</title>
<body><center>
尊敬的§in{id},欢迎您!
</dody></html>
EO
exit;
如果运行sambar44的机器是在一个局域网中,那么从另外的机器上输入这台机器的IP地址、姓名,就可以看到屏幕的回应——“尊敬的朋友,欢迎您!”,同时访问者的姓名和IP地址也记载到了c:sambar44i-bindate
ewboy文件中,这就是标准的CGI网站服务。
拨号上网的电脑可以通过固定网址被访问吗?
可以!
首先,如果你的主机联入了因特网,那么任何一个因特网用户都可以像访问雅虎等大网站一样访问你的“本地硬盘网站”,你当然拥有CGI权限,IP地址就是每次联入因特网时ISP分配给你的不固定的IP地址。
然后要解决的问题就是如何获得一个可访问的固定的网址。
[步骤]:
1.登录网络财金站,在“门户网页”中申请成为会员。主要就是选择一个ID号,如果这个ID还没有被其他申请者占用,就会提示“恭喜”,你就拥有了一个固定网址!
2.在“启动服务”画面中修改首页内容。此处提供了三个功能画面——“启动”、“修改门户网页”、“密码信息修改”。其中“修改门户网页”,可以将自己的首页HTML源码复制过来,或者在原来的ID.HTM基础上修改。需要注意的是网络财金站只提供一个网页,也就是“门户网页”——进入你的硬盘Web的“NET DOOR”。所以它适合作为一个验证窗口或者是一个介绍网站结构的导航界面。
3.联入因特网,并启动“Sambar Server 4.4”,使自己的硬盘能够对外提供Web服务。
4.登录网络财金站→“门户网页”→“启动服务”→“启动服务器”,输入ID号和密码,点击“启动”按钮。此时,你的本地硬盘网站就和你的“门户网页”网址建立了联系。访问者就可以通过网络财金站的固定网址访问你的硬盘网站了。
注意:“启动服务器”的窗口不要关闭,因为关闭这个窗口就意味着你中止了本地硬盘与“门户网页”网址的关联。
5.当你a)停止“Sambar Server 4.4”服务;b)关闭“启动服务器”窗口;c)断开网络连接;d)关闭主机的时候,访问者访问你的固定网址,就会得到“抱歉”提示,并告知访问者你上次提供服务的时间。
两点间大文件传输——直线距离最近!
[方法比较]:
网络为我们提供了共享数据和应用的途径,例如E-mail、FTP等手段。大家知道,小文件我们可以用电子邮件传送,但对大文件就不合适了,因为它要重新进行编码,附加一些冗余信息,例如:要传送一个250kB的文件,作为电子邮件的附件发送时邮件就会达到340kB左右,而且很多邮件服务器对于邮件大小是有限制的。
再一种方法是首先将要传送的大文件用FTP上传到申请的免费个人主页空间,然后再由接受方到该空间使用FTP下载。这样做的两个局限,一是需要两次大数据量的传输操作;二是对于很大的文件免费个人空间也许其5MB、10MB的空间不能满足需要。
我们渴望一种无冗余数据、无重复操作的大文件传输方式,它应该像两点间的直线一样,实现大文件的最短距离传输。门户网页的一个另类典型应用就是网友间的大文件传送。对于“门户网页”的会员来说可以如下操作:
[操作步骤]:
1.将要传送的大文件拷贝到C:sambar44
docs下(假设为bigfile.ZIP);
2.修改C:sambar44docsindex.htm文件,添加大文件的链接,如:
<html>
<head> <title>大文件传输</title> </head>
<body><center>
<a href = "bigfile.ZIP">大文件</a>
</body>
</html>
3.网友透过门户网页,到达你的硬盘,直接下载大文件而不必额外下载冗余数据。
“门户网页”→“C:sambar44docsindex.htm”→“bigfile.zip”;
4.对于很大的文件,你可能需要将它切割成多块,分次下载,很多网站都提供中文免费软件“大文件切割机2.0V”,它能够实现无冗余切割,只要将所有子文件下载到指定目录,可以用大文件切割机自动组装。
[限制因素]
首先是安全性问题,Sambar44实现的Win 98下的Web服务,在面对熟悉黑客技术的恶意访问者时可能会导致系统受攻击和破坏,对于Sambar44的安全性网络财金站不作担保。一般来说,只启用Sambar44的Web服务是安全的。
其次就是速度问题,拨号上网速度在56K以内,自然无法与大型IDC提供的百兆专线相提并论。所以只适合于数据流量小的应用。
[适用人群]
包月制上网、能够每天固定时间联网的用户,希望在不增加太多费用的前提下,对外提供小数据流量的有特色的Web服务(用PERL开发的专用系统)。
|