在這裡討論這個問題,僅是為了研究,我個人認為,在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.tar
2:安裝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/suexe
3:安裝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.27
ok,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::ASP
For 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!
參考文檔
http://www.apache-asp.org/install.html
http://cpan.org/modules/by-module/Apache/Apache-ASP-2.49.readme
http://perl.apache.org/docs/1.0/guide/getwet.html#Installing_mod_perl
http://www.freelamp.com/new/publish/1015481268/index_html