为什么要在Linux下安装ASP环境?且看这几个原因够不够:
A. 作为Linux下的开发环境
B. 当IIS中的ASP仅用于后台,同时使用人数较少.前台页面主要以HTML静态页面展示,ASP用来做的事情较少,本身对系统的负担很轻
综合以上,当ASP显得有点鸡肋时,相应的应用完全可以移植到Linux下,以充分发挥Linux下系统平台优势和资源优势。
因为ASP本为Windows下IIS的原生产物,移植到Linux下确实有些怪异,所以实现方案也比较少,目前能找到的基本以Perl转义为主。
在Linux下安装ASP环境必须的环境支持为: Apache Apache的perl模块 perl的Apache::ASP包,请看安装步骤:
1.安装Apache::ASP(也可在第3步之后安装)
perl -MCPAN -e shell
install CPAN
install MLDBM
install MLDBM::Sync
install Apache::ASP
如果通过perl安装失败,可以去CPAN(http://www.cpan.org)下载这几个源代码包:
Digest-MD5-2.20.tar.gz
MLDBM-2.01.tar.gz
MLDBM-Sync-0.30.tar.gz
Apache-ASP-2.37.tar.gz
按顺序展开源代码,各自执行以下操作安装:
perl Makefile.PL
make
make test
make install
2.安装Apache, 在Linux环境下模拟ASP环境目前仅能查到Apache ASP的方案
#下载httpd
wget http://labs.renren.com/apache-mirror/httpd/httpd-2.2.15.tar.gz
tar zxf httpd-2.2.15.tar.gz
cd httpd-2.2.15
./configure --prefix=/usr/local/apache
make
make install
cd ..
3.安装apache的mod_perl模块
#下载apache的perl模块
wget http://perl.apache.org/dist/mod_perl-2.0-current.tar.gz
tar zxf mod_perl-2.0-current.tar.gz
cd mod_perl-2.0.4/
perl Makefile.PLUSE_APXS=1 WITH_APXS=/usr/local/apache/bin/apxs EVERYTHING=1
make
make install
cd ..
4.httpd.conf配置:
因为ASP环境不是我们在Linux下要用的主用环境,主用环境是Nginx,所以将Apache监听端口修改为80端口之外的端口,我修改为81
Listen 81
网站根目录也需修改成Nginx网站根目录,例如我的Nginx网站根目录为:/var/webhosts/htdocs/www,那么需要修改如下2个位置:
DocumentRoot "/var/webhosts/htdocs/www"
<Directory "/var/webhosts/htdocs/www">
在httpd.conf文件末尾追加如下内容:
LoadModule perl_module modules/mod_perl.so
PerlModule Apache::ASP
<Files ~ (.asp)>
SetHandler perl-script
PerlHandler Apache::ASP
PerlSetVar Global .
PerlSetVar StateDir /tmp/asp
</Files>
ok,ASP环境安装完成,启动Apache试试:)
/usr/local/apache/bin/apachectl start
在网站根目录下创建test.asp,内容如下:
<!-- sample here -->
<html>
<body>
For loop incrementing font size: <p>
<% for(1..7) { %>
<!-- iterated html text -->
<font size="<%=$_%>" > Size = <%=$_%> </font> <br>
<% } %>
</body>
</html>
<!-- end sample here -->
现在打开http://127.0.0.1:81/test.asp看看效果吧:)