转一编文章吧!
b]在unix上让apache支持asp[/b]
作者:南非蜘蛛 [email protected] 
个人主页:http://douzhe.nease.net 
转载请保留作者信息
在这里讨论这个问题,仅是为了研究,我个人认为,在unix上,让apache支持asp没有任何实际意义
如果以前是在win上开发的asp,我想你就让到在win上好好用吧,不用费劲的移植到unix上了我是在solaris上测试的安装,其它系统,freebsd,linux和sco我想也差不多,忘大家测时候能反馈给我你的结果,谢谢
好了,让我们开始吧
下载相关软件
apache_1.3.27.tar       下载:http://www.apache.org/dist
Apache-ASP-2.49.tar     下载:http://cpan.org/modules/by-module/Apache/
mod_perl-1.27.tar       下载:http://perl.apache.org/download/index.html
stable.tar(perl-5.8.0)  下载:http://www.cpan.org/src/把上面的软件下载到一个目录,如test
1:解压
#tar xvf apache_1.3.27.tar 
#tar xvf Apache-ASP-2.49.tar
#tar xvf mod_perl-1.27.tar2:安装apache
为了以DSO的方式安装mod_perl,所以要有so模块
#cd apache_1.3.27
#./configure --prefix=/usr/local/apache
#make
#make install
上面这样编译会有一些modules加不进来,我只好手动指定modules了,大家用下面的命令安装apache
#./configure --prefix=/usr/local/apache --enable-module=auth_anon --enable-module=auth_dbm --enable-module=autoindex --enable-module=cgi --enable-module=expires --enable-module=expires --enable-module=proxy --enable-module=rewrite --enable-module=so
#make
#make install
检查安装的模块
#cd /usr/local/apache/bin/httpd -l
Compiled-in modules:
 http_core.c
 mod_env.c
 mod_log_config.c
 mod_mime.c
 mod_negotiation.c
 mod_status.c
 mod_include.c
 mod_autoindex.c
 mod_dir.c
 mod_cgi.c
 mod_asis.c
 mod_imap.c
 mod_actions.c
 mod_userdir.c
 mod_alias.c
 mod_rewrite.c
 mod_access.c
 mod_auth.c
 mod_auth_anon.c
 mod_auth_dbm.c
 mod_proxy.c
 mod_expires.c
 mod_so.c
 mod_setenvif.c
suexec: disabled; invalid wrapper /usr/local/apache/bin/suexe3:安装mod_perl
% make -v
% gcc -v
% perl -v
安装perl
我得perl版本不够,所以我升级了一下perl的版本,现在是v5.8.0 
下载http://www.cpan.org/src/stable.tar
#tar xvf stable.tar
#cd perl-5.8.0/
#make
#make install
到sunfreeware下载pkg的安装也可以,可能还更简单#cd mod_perl-1.27
看看DSO编译的语法
#grep DSO Makefile.PL 
照猫画虎
#perl Makefile.PL EVERYTHING=1 DO_HTTPD=1 USE_APACI=1 USE_DSO=1 USE_APXS=1 WITH_APXS=/usr/local/apache/bin/apxs
#make
#make install测试mod_perl模块
启动apache
#telnet localhost 80
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
输入get Head /http /1.0
HTTP/1.1 400 Bad Request
Date: Wed, 25 Dec 2002 03:32:32 GMT
Server: Apache/1.3.27 (Unix) mod_perl/1.27ok,mod_perl加上了
给perl安装asp模块,一张方法是CPAN安装,一种是常规安装
CPAN安装
#perl -MCPAN -e shell
cpan> install CPAN
...
Installing the Apache::ASP bundle will automatically install all the modules
Apache::ASP is dependent on as well as Apache::ASP itself. If you have
trouble installing the bundle, then try installing the necessary modules one
at a time:
cpan> install MLDBM
cpan> install MLDBM::Sync
cpan> install Digest::MD5
cpan> install Apache::ASPFor extra/optional functionality in Apache::ASP 2.31 or greater, like
support for FormFill, XSLT, or SSI, you can install this bundle via CPAN:
cpan> install Bundle::Apache::ASP::Extra也可以用常规的方法安装asp模块
Otherwise, just copy ASP.pm to
$PERLLIB/site/Apache
> perl Makefile.PL
> make 
> make test
> make install安装完毕,进行测试
在htdocs里vi一个test.asp,内容如下<!-- sample here --> 
<html> 
<body> 
For loop incrementing font size: <p> 
<% for(1..5) { %> 
<!-- iterated html text --> 
<font size="<%=$_%>" > Size = <%=$_%> </font> <br> 
<% } %> 
</body> 
</html> 
<!-- end sample here -->http://202.106.185.101/test.asp
大家可以到这里看看效果good luck!

解决方案 »

  1.   

    世上没有不可能的事
    来自http://shunsheng.yeah.net
     2K、XP 装APACHE 支持ASP
    安装步骤: 
    1 去http://www.stryon.com/下载iasp的win32版:
    http://www.stryon.com/iasp/211/iASP2.1.01.exe
    iASP2.1.01.exe,10M左右。 
    2 确定您的win2000 server 已经安装了jdk,apache。
    3 双击iASP2.1.01.exe,开始安装。安提示做即可。
    4 安装完毕后,提示是否现在配置iasp。当然选择:是。 
    5 配置: 
    第一步:代理服务(proxy)选择:instant asp native servlet support 
    第二步:WEB SERVER选择:apache。(可以不管它提示) 
    第三步:选择apache的配置文件:httpd.conf的位置。偶的为:c:\apache\conf\httpd.conf 
    版本选择1.3.2X(根据您的apache版本选择)。 
    proxy:如果您有固定ip,添入您的固定ip。如果没有,那就添:127.0.0.1。 
    port: 这是apache与iasp之间的代理接口。使用默认(9098)即可。 
    server manager port:远程管理端口,选择默认(9095)即可。 
    第四步:配置完成。 
    6 说明: iasp在apache的配置文件httpd.conf最后加入了以下语句: # iASP Setting 
    LoadModule iasp_module "C:/IASP2101/bin/apache/win32/1.3.20/iasp.dll" Alias /iasp "C:/IASP2101" 
    IaspConfig server "C:/IASP2101/properties/server.properties" 
    IaspConfig rules "C:/IASP2101/properties/rules.properties" 7 通过更改httpd.conf更改apache的默认首页: DirectoryIndex index.htm 
    DirectoryIndex index.php 
    DirectoryIndex index.asp 更改完毕后,保存,重启apache 
    8 执行:开始->程序->Instant ASP 2.1.01->Install iASP as NT Service 
    这样,iasp就被加到了Win2K/XP server的服务中。 
    执行:开始->程序->Instant ASP 2.1.01->Start Instant ASP 
    这样,iasp就被立即打开。apache可以支持asp了!
     
      

  2.   

    上面的方法是可以行的,早年的时候我测试过了
    不过并不是全面支持asp的所有特性。
      

  3.   

    如果是nt系统,建议使用iis作为处理asp的容器,80port还跑apache。
      

  4.   

    也就是说把iis和apache整合一下。
      

  5.   

    好几种,我知道又一个叫iASP的东东