ASP的工作原理和运行环境
如果你已经安装好了Web服务,那么我们可以首先做一个实验,首先可以浏览你本机的IP下的一个*.HTM文件:
http://127.0.0.1/test/test.htm
然后再把这个文件复制一个成test.asp,然后再浏览 http://127.0.0.1/test/test.asp
你会发现浏览的结果是完全一样的.所以说ASP并没有丢掉HTML,而只是在其中加入一些"特殊语句".
如果浏览器向Web服务请求的是.HTM文件,那么Web服务会直接把文件的内容传给浏览器.当用户申请一个*.asp网页时,Web服务器响应该HTTP请求,调用ASP引擎,解释被申请文件;当遇到任何与ActiveX Scripting兼容的脚本(如VBScript和Jscript)时,ASP引擎会调用相应的脚本引擎进行处理;若脚本指令中含有访问数据库的请求,就通过ODBC与后台数据库相连,由数据库访问组件执行访问数据库操作;ASP脚本是在服务器端解释执行的,它依据访库的结果集自动生成符合HTML语言的网页,去响应用户的请求。所有相关的发布工作由Web服务器负责。
运行环境的搭建
1.如果您的操作系统为Windows 98,请运行 Windows98的安装光盘。在其Add-ons/pws目录下找到pws的安装程序,运行安装即可
2.如果操作系统为 Windows 2000 以上,可以按图4.1.1的方法安装 IIS:
打开【控制面板】,找到 【添加/删除程序】→【添加/删除WINDOWS组件】,
弹出 【Windows 组件向导】 ,选择 【Internet 信息服务(IIS)】(在 Windows Server 2003 中,此选项是在 【就用程序服务器】的【详细信息】里),插入安装盘,按【下一步】开始安装。
安装成功后,就可以按照自己的要求配置IIS了。首先您需要知道IIS在我们使用的过程中充当着一个虚拟的角色。也就是我们是“假装的”把本机磁盘空间的一部分空间划归为“服务器”(实际上我们访问的网站是存储在专门的网络服务器上的)。既然我们也要访问“服务器”上的内容(虽然它存在本机上),那么我们也要通过类似于访问网站的模式去访问。
IIS的默认目录安装在 系统盘:/Inetpub/wwwroot里,也就是说上面的虚拟目录http://localhost 或http://127.0.0.1其实是执行您机器上物理路径为 系统盘:/Inetpub/wwwroot上的内容,尝试看看IIS起始页中的localstart.asp是不是就在wwwroot目录里? 同理,如果在wwwroot里有一个b.asp文件,同样可以通过http://localhost/b.asp 或http://127.0.0.1/b.asp 来访问。
注意:虽然在Windows98下也可以配置ASP环境(PWS),但我们强烈建议您使用Windows2000及其后续版本的Web服务器(IIS)来配置ASP环境。本书中的范例也都是基于IIS方法的。
提示:PWS是Personal Web Server的缩写,意译是“个人网络服务器”;而IIS是Internet Information Server的缩写,意译是“因特网信息服务器”。从字面的意思来看,您就可以分辨出哪一个的功能会更强劲些。
技巧:虽然默认的目录就定义在 系统盘:/Inetpub/wwwroot里,但是在一般情况下。我们还是不直接的使用它。因为日积月累,不可避免的我们要操作多个ASP文件,或者调试多个ASP站点,如果文件都散放在wwwroot里,会造成很多不必要的麻烦。最好给每一个不相干的文件群单独建在一个文件夹里。
同时,wwwroot的默认目录也是可以更改的。进入【控制面板】→【管理工具】→【Internet 服务管理器】,双击它,会出现【Internet信息服务器】的主界面,在窗体里找到【计算机名】,展开后会出现:【默认 FTP 站点】、【默认 Web 站点】、以及【默认 SMTP 虚拟服务器】。在【默认 Web 站点】上单击右键,选择【属性】,就可以进行IIS的诸多配置了。
特别提示
在这里,我们着重的介绍几个比较重要的配置:
1.【属性】→【主目录】,可以修改默认的虚拟路径以及ASP文件的执行权限(除虚拟目录需要更改外,其他一般以默认设置为宜)。
2.【属性】→【文档】,默认文档的意思就是:如果你只填加index.asp在一个虚拟目录(假如就是wwwroot里)为默认文档。那么当你在浏览器中输入http://localhost 或者http://127.0.0.1 的时候默认访问的文件就是index.asp,就像你访问http://www.flash8.net 的时候,其实是访问flash8.net中的一个索引文件(比如default.asp或者index.asp等等)。
现在,你的配置已经完成了。如果你的计算机在局域网内,其他计算机就可以访问你的网站了,只要输入http://你的机器名,如果你连上了Internet,别人只要输入你的IP地址就可以了。
考虑到虚拟目录的整洁性,以及在日常的工作中养成良好的习惯,我们建议您为这个ASP程序单独建立一个文件夹。假如为 系统盘:/Inetpub/Project1/ ,相应的,我们也给它需要指定虚拟目录。在“默认 Web站点”上单击鼠标右键,选【新建】→【虚拟目录】,这时IIS会引导你到【虚拟目录创建向导】的页面,询问你虚拟目录的别名。我们可以给它起名叫p1,按【下一步】,在实际的目标路径里,指向到 系统盘:/Inetpub/Project1/ 一路“Next”就完成了新目录的配置。
参考文章:在linux上使用ASP
自从MS推出ASP技术后,由于ASP在创建动态交互式站点上的强大功能及其代码编写的简便性,使ASP在很多
Internet/Intranet/Extranet网站上得到了极其广泛的应用,尤其是涉及到数据库操作的网站应用系统更是倾向于采用ASP
技术。但由于众所周知的原因,ASP只能工作于MS自己的操作系统平台和服务器软件之下,即只能在WindowsNT+IIS系列
或Windows9X+PWS系列中使用,因而就决定了ASP应用的局限性。据有关资料显示,采用Windows操作系统平台和服务器软件
的网站在15%左右,也就是说有将近85%的网站将不能采用ASP技术。实际上,很多网站采用的是Unix、Linux、Soris
和Netware等操作系统及相应的服务器,这说明ASP技术在应用上确实有很大的限制。
最近,一家名为“Halcycon”的软件公司,不仅看到了ASP应用系统的优势和局限性,而且提出了“ASP Anytime,
Anywhere”的口号,并开发了一个称为iASP(Instant ASP)的ASP脚本解释引擎软件,使ASP不仅可以在采用Windows操作
系统平台和服务器软件的网站上使用,还可以在采用其它操作系统如Unix、Linux、Soris、Netware操作系统及相应服务器
的网站上使用。iASP全面继承了ASP的优势,并与ASP完全兼容,因而ASP应用系统几乎可以直接移植到非Windows操作系统
平台下的iASP环境中运行,使得ASP应用系统真正成为了一种跨平台的Internet、Intranet或Extranet应用系统。
iASP与ASP相比,不仅在支持操作系统平台上具有优势,在使用第三方组件构建ASP应用系统上同样具有明显的优势。
iASP不仅支持流行的ActiveX组件,同样支持流行的Enterprise Java Beans组件和CORBA兼容组件,从而使用ASP应用系统
功能更为强大,应用更为广泛。除了MS Visual系列开发工具和Borland系列开发工具外,还可以用Java系列开发工具,让
组件开发人员有更多的选择从而可以更为得心应手地开发有关组件。
iASP有两种版本,一种适用于Windows操作系统平台和服务器软件,另一种适用于Unix、Linux、Soris、Netware操作
系统及相应服务器软件。iASP目前的版本为1.0,其开发版本可以在“Halcycon”的软件公司网站上免费下载,其功能与正
式版本相比基本相同,区别在于开发版本只支持两个并发连接,因而只能用于ASP学习和开发或用在比较小的Intranet局域
网系统中,想在网络特别Unix、Linux局域网络中使用ASP的网络开发人员不妨去下载一个试用一下,文件大小有6M多。
下面是笔者在搭建iASP开发环境时安装与配置iASP软件的一些经验,希望给初用者做个参考,从而少走弯路,多做些
有意义的工作。
一、iASP软件环境要求
iASP软件是用JAVA程序语言编制而成的,需要JDK1.1.X或以上版本的支持,因而需要服务器系统上预先安装JDK1.1.X或以
上版本。Linux平台下的JDK1.1.X可以在http://xfer.nitric.com/pub/java-linux/下载,基于Windows9X/NT平台的
JDK1.1.X的下载地址为ftp://202.103.111.173/Download/DEVELOP/JAVA/jdk1_1_1-win32-x86.exe。
二、iASP安装程序支持的系统平台和服务器软件
iASP软件是用JAVA程序语言编制而成的,原则上可运行在所有JAVA平台上。
iASP可自动配置服务器软件,使之能使用iASP解释引擎解释ASP页面;iASP可以使用Halcycon软件公司开发的iASP Servlet
接口与服务器进行连接和通信,也可以使用其它Servlet接口与服务器进行连接和通信。下面是Halcycon软件公司的工程技
术人员已证实支持较好的系统平台和服务器软件的列表。
(一)Sun Solaris Sparc系统平台
1、Apache服务器软件
iASP可对Apache服务器软件的1.3.0、1.3.1、1.3.2、1.3.3、1.3.4、1.3.6六个版本进行自动配置使之使用iASP解释引擎
解释ASP页面;并通过iASP中的Servlet接口与之连接和通信。
2、Netscape Fast Track(FT)和Enterprise Server(EP)服务器软件
iASP可对FT3.0.X、EP3.5.X、EP3.6.X进行自动配置使之使用iASP解释引擎解释ASP页面;并通过iASP中的Servlet接口与之
连接和通信。
3、Sun Web Server2.1服务器软件
iASP可对Sun Web Server2.1服务器软件进行自动配置使之使用iASP解释引擎解释ASP页面;
并通过服务器软件的Servlet接口与之连接和通信。
4、Zeus服务器软件
iASP可对Zeus服务器软件进行自动配置使之使用iASP解释引擎解释ASP页面;并通过Zeus和
Apache JServ Servlet接口与之连接和通信。
(二)Sun Solaris Intel系统平台
1、Apache服务器软件
iASP可对Apache服务器软件的1.3.0、1.3.1、1.3.2、1.3.3、1.3.4、1.3.6六个版本进行自
动配置使之使用iASP解释引擎解释ASP页面;并通过iASP中的Servlet接口与之连接和通信。
2、Sun Web Server2.1服务器软件
iASP可对Sun Web Server2.1服务器软件进行自动配置使之使用iASP解释引擎解释ASP页面;
并通过服务器软件的Servlet接口与之连接和通信。
3、Zeus服务器软件
iASP可对Zeus服务器软件进行自动配置使之使用iASP解释引擎解释ASP页面;并通过Zeus和
Apache JServ Servlet接口与之连接和通信。
(三)Novell Netware系统平台
Netscape Fast Track(FT)和Enterprise Server(EP)服务器软件
iASP可对FT3.0.X、EP3.5.X进行自动配置使之使用iASP解释引擎解释ASP页面;并通过Novell
Servlet Gateway接口与之连接和通信。
(四)SCO Unixware系统平台
1、Apache服务器软件
iASP可对Apache服务器软件的1.3.0、1.3.1、1.3.2、1.3.3、1.3.4、1.3.6六个版本进行自
动配置使之使用iASP解释引擎解释ASP页面;并通过iASP中的Servlet接口与之连接和通信。
2、Netscape Fast Track(FT)和Enterprise Server(EP)服务器软件
iASP可对FT2.0.X进行自动配置使之使用iASP解释引擎解释ASP页面;并通过iASP中的Servlet
接口与之连接和通信。
(五)Linux Intel系统平台
1、Apache服务器软件
iASP可对Apache服务器软件的1.3.0、1.3.1、1.3.2、1.3.3、1.3.4、1.3.6六个版本进行自
动配置使之使用iASP解释引擎解释ASP页面;并通过iASP中的Servlet接口与之连接和通信。
2、Zeus服务器软件
iASP可对Zeus服务器软件进行自动配置使之使用iASP解释引擎解释ASP页面;并通过Zeus和
Apache JServ Servlet接口与之连接和通信。
(六)Windows9X/NT系统平台
1、Apache服务器软件
iASP可对Apache服务器软件的1.3.0、1.3.1、1.3.2、1.3.3、1.3.4、1.3.6六个版本进行自
动配置使之使用iASP解释引擎解释ASP页面;并通过iASP中的Servlet接口与之连接和通信。
2、Netscape Fast Track(FT)和Enterprise Server(EP)服务器软件
iASP可对FT3.0.X、EP3.0.X、EP3.6.X进行自动配置使之使用iASP解释引擎解释ASP页面;并
通过iASP中的Servlet接口与之连接和通信。
3、Internet Information Server服务器软件
iASP可对Internet Information Server服务器软件进行自动配置使之使用iASP解释引擎解释
ASP页面;并通过iASP中的Servlet接口与之连接和通信。
4、Lotus Domino服务器软件
iASP可对Lotus Domino服务器软件进行自动配置使之使用iASP解释引擎解释ASP页面;并通过
Lotus Domino服务器软件自有的Servlet接口与之连接和通信。
5、Java Web Server服务器软件
iASP可对Java Web Server服务器软件进行自动配置使之使用iASP解释引擎解释ASP页面;并通
过Java Web Server服务器软件自有的Servlet接口与之连接和通信。
(七)HPUX系统平台
Zeus服务器软件
iASP可对Zeus服务器软件进行自动配置使之使用iASP解释引擎解释ASP页面;并通过Zeus和
Apache JServ Servlet接口与之连接和通信。
(八)SGI系统平台
Zeus服务器软件
iASP可对Zeus服务器软件进行自动配置使之使用iASP解释引擎解释ASP页面;并通过Zeus和
Apache JServ Servlet接口与之连接和通信。
三、用iASP构建ASP应用系统环境
假设系统中已经正常安装和配置了TCP/IP等网络协议。
下面以RedHat Linux 5.1和Apache 1.3.3服务器软件为例,讨论如何安装和配置iASP,以建立一个
ASP开发和应用环境。
(一)、安装Apache 1.3.3服务器软件
1、卸载Apache 1.2.6服务器软件
如果当前使用的是RedHat Linux 5.1自带的Apache服务器软件,则其版本号为1.2.6-4(用
命令httpd -v可以查看Apache服务器软件的版本号),不在iASP自动配置程序支持的服务器范
围之内,因而需要将其卸载,以便重新安装Apache 1.3.X服务器软件。
在“控制面板”的Package Management(包管理)中打开Network(网络)中的Daemons(
服务程序),选择“apache1.2.6-4”,单击Uninstall(卸载)可将其卸载。
2、安装Apache 1.3.3服务器软件
如果手头没有Apache 1.3.X服务器软件,可以到http://apache.nextpath.com/dist/
apache_1.3.6.tar.gz下载一个。
笔者手头有一个Xteam Linux 1.0的光盘,其中有Apache 1.3.3服务器软件的发行版本,
位于光盘的/xteam/pack目录下,文件名称为apache-1.3.3-1.i386.rpm。用命令
rpm -i /mnt/cdrom/xteam/pack/apache-1.3.3-1.i386.rpm可完成安装。
3、启动Apache 1.3.3服务器软件
可以用命令httpd来启动Apache 1.3.3服务器软件。启动Apache 1.3.3服务器软件后可以
用Netscape Communicator浏览器以http://YourComputerName的方式如http://localhost来
访问Apache 1.3.3服务器软件提供的WWW服务。默认的页面为index.html,通常位于“/home/
httpd/html”目录中(该目录是Apache的WEB发布目录,相当于IIS或PWS系统中的
c:/inetpub/wwwroot),页面的主题为“It Worked”,表明Apache已能正常工作,可以进行
iASP的配置工作了。
(二)、安装JDK1.1.X
iASP的运行要依赖JDK1.1.X或以上版本,要求系统中必须安装JDK。
1、确定C运行库的类型
Liunx/Unix版本的JDK一般有libc5和glibc两个版本,以适应不同Liunx/Unix系统中的C运行
库版本。用命令“ls -l /lib/libc.so.*”可以列出C运行库文件,若“*”处的字符为“5”
则表示C运行库类型为libc5,为“6”则表示C运行库类型为glibc。笔者所用的RedHat Linux
5.1的C运行库类型为glibc。
2、安装JDK1.1.X
笔者在http://xfer.nitric.com/pub/java-linux/处下载JDK1.1.7的glibc版本,并将其改名
jdk117.gz。将jdk117.gz复制到/usr/local目录下,进入/usr/local目录,用“tar -xvzf
jdk117.gz”命令将文件解压即完成JDK1.1.7的安装,安装目录为/usr/local/jdk117_v1a。
(三)、安装iASP
笔者在http://www.halcyonsoft.com/asp/iasp_fcs.tar.gz处下载了Linux/Unix版本的iASP,并改
名为iasp_lnx.gz,并复制到/usr/local。
用命令“tar -xvzf iasp_lnx.gz”将文件解压,可产生install.sh和iasp.tar两个文件。进入
/usr/local目录,运行./install.sh,按照安装程序提示完成iASP的安装。
在安装过程中,需要指定JDK的BIN目录(/usr/local/jdk117_v1a/bin)和iASP安装目录
(/usr/local)。在安装过程完成后,会选择是否开始对Web服务器进行配置,配置过程在下面讨论,选
择“N”结束安装。此时iASP被安装在目录/usr/local/iasp下,有五个文件的作用值得注意。
connector.sh:启动iASP自动配置向导 start-server.sh:启动iASP代理服务器
stop-server.sh:关闭iASP代理服务器 start-admin.sh :启动iASP远程管理服务器
stop-admin.sh :关闭iASP远程管理服务器
(四)、配置iASP
1、关闭Web服务器
在进行iASP配置前,应首先关闭Web服务器软件。可以用任何方式关闭Apache 1.3.3服务器软件。
2、配置iASP
iASP配置向导程序可为Apache服务器软件、Netscape Enterprise服务器软件、Internet
Information Service服务器软件进行自动配置,而Zeus、Sun Web Server服务器软件则不需要配置。
在/usr/local/iasp下,运行./connector.sh启动iASP配置向导程序。选择“Y”开始配置;
选择服务器软件及版本号(8:Apache 1.3.3)、Apache配置文件httpd.conf所在目录
(/etc/httpd/conf),其它可保持不变(按回车键采用默认设置)。在提示是否进行另一个服务器的配置时,选择
“N”,完成配置。
(五)、测试iASP
1、启动iASP服务器
iASP服务器是一个Connector Proxy代理服务器软件,用于与服务器软件进行通信。
进入XWindows,打开一个nxterm窗口,在目录/usr/local/iasp下运行./start-server.sh,
启动iASP Connector Proxy代理服务器程序。
2、测试iASP
启动Apache 1.3.3服务器软件。将一个ASP页面文件拷到Apache页面发布目录“/home/httpd/
html”目录中,并用Netscape Communicator浏览器进行访问,如可用“http://localhost/
test.asp”访问ASP文件test.asp,其内容如下:
<html>
<head>
<title>Test iASP</title>
</head>
<body>
<%
Response.Write "<BR><h1>Congradulations!<BR>Instant ASP has worked for you!</h1>"
%>
</body>
</html>
至此,Apache 1.3.3服务器软件已经可以用iASP解释引擎解释和执行ASP页面了。