评论

收藏

[Apache] 让apache也支持asp环境的方法

web服务器 web服务器 发布于:2021-10-15 14:49 | 阅读数:524 | 评论:0

由于apache和php合作好,各方法都优于asp在apache上的运行所以默认的apache是没有这个模块的,相 关的教程也少,我们要想让apache可运行asp只要加载mod_aspdotnet-2.2.0.2006-setup-r2.msi这个模块就好了
注:注意上面方法只限于在windows下 并且装了Framework一般win7已经自带有了
1、首先 下载一个mod_aspdotnet-2.2.0.2006-setup-r2.msi
2、安装好后在apache的moudles目录会生成一个mod_aspdotnet.so文件
3、修改httpd.conf 在文件的末尾加上下面代码
复制代码 代码如下:
#asp.net   
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"   
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj licx rem resources resx
soap vb vbproj vsdisco webinfo   
<IfModule mod_aspdotnet.cpp>   
   AspNetMount / "D:/xampp/xampp/htdocs/"   
  Alias / "D:/xampp/xampp/htdocs/"   
  <Directory "D:/xampp/xampp/htdocs/">   
     Options FollowSymlinks ExecCGI   
    Order allow,deny   
    Allow from all   
    DirectoryIndex index.htm index.aspx   
  </Directory>   
  AliasMatch /aspnet_client/system_web/(d+)_(d+)_(d+)_(d+)/(.*)
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"   
  <Directory "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">   
    Options FollowSymlinks   
    Order allow,deny   
    Allow from all   
  </Directory>   
</IfModule>
#asp.net
其中红色为你网站放置的目录
4、重新启动apache ok成功
看看其它文章
按照网上的说明尝试装IIS,好歹装上了可是不好使,看来xp home是不支持IIS,于是转向Apache。
下载安装好Apache 2.2.9 http://www.apache.org/,一切正常,又发现不支持asp和.net的程序,晕;
google一番,找到Sun Java System Active Server Pages 4.0
http://www.sun.com/software/chilisoft/,
下载下来安装好,重启机器,ok,asp没问题了;
继续google,找到Apache下面的一个项目mod_aspdotnet,发现Apache已经不支持此项目了,
此项目改投sourceforge,mod_aspdotnet-2.2.0 http://sourceforge.net/projects/mod-aspdotnet,
下载安装,修改apache的httpd.conf,在最后添加
复制代码 代码如下:
#asp.net LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj /
licx rem resources resx soap vb vbproj vsdisco webinfo
<IfModule mod_aspdotnet.cpp>
# Mount the ASP.NET example application
AspNetMount /active "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/active"
# Map all requests for /active to the application files
Alias /active "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/active"
# Allow asp.net scripts to be executed in the active example
<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/active">
Options FollowSymlinks ExecCGI
Order allow,deny
Allow from all DirectoryIndex Default.htm Default.aspx
</Directory>
# For all virtual ASP.NET webs, we need the aspnet_client files
# to serve the client-side helper scripts.
AliasMatch /aspnet_client/system_web/(/d+)_(/d+)_(/d+)_(/d+)/(.*) /
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
<Directory /
"C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
Options FollowSymlinks
Order allow,deny
Allow from all
</Directory>
</IfModule>
以上部分代码,注意不要有空行,相关路径按照实际情况填写
又又发现此版本只支持.net framework1.1,于是卸掉2.0重装1.1,ok了,只是对.net 2.0的语法不支持

最终测试成功的环境
windows xp home edition
apache 2.2.9
sun one asp 4.0
.net frmawork 1.1
mod_aspdotnet 2.2.0
万恶的microsoft
KO我们的安装就可以了,大家看看可以正常运行不哦。

关注下面的标签,发现更多相似文章