为什么要在apache下发布ASP.NET,看这篇文章您一定有自己的原因。
我是因为XP系统里面同时装IIS 和 AppServer会有问题。
步骤:
1.环境搭建,这个不废话,我安装的是.NET2.0 apache2.2 你可以使用 phpnow,xampp,phpstudy都可以,或者是自己动手搭建,需要下载PHP mysql apache软件
2.下载apache下.NET组件包:这里为大家准备好了http://files.cnblogs.com/gosky/Apache2.2%E4%B8%8BASPNET%E7%BB%84%E5%BB%BAmod_aspdotnet.rar
3.注意环境是否一致,直接下一步安装完成。
4.新建一个net目录,即为ASP.NET文件的根目录(相当于WWW目录),程序就发布到这里面。
我使用的是AppServer:E:\AppServ\net (这个路径可以随便修改)
5.修改配置文件,打开httpd.conf 使用其他集成环境自己找到。
6.重点来了,在末尾添加:
# asp.net 支持 # 这2条配置属于全局配置,可放在其它响应 LoadModule/AddHandler 语句块后面 # 我的配置中,下面整个配置块是放在最后,未分开,这也是为了方便管理 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 语句相当于 Linux 中的 mount 命令,是把Asp程序目录挂载到一个 URL 地址 # 如果不是整个网站都用Asp,则不应该挂在‘/’下。如:AspNetMount /asptool "D:\\www\\Apache2\\htdocs\\aspweb" # 注意:整站采用时,全局的DocumentRoot 为 "D:/www/Apache2/htdocs/aspweb" AspNetMount /asptool "E:\\AppServ\\net" # Map all requests for /active to the application files # 意思是把所有到‘/asptool’的请求映射到挂载的Asp程序目录下 # 我的配置中,下面一句是注释掉的 Alias /asptool "E:/AppServ/net" # Allow asp.net scripts to be executed in the active example <Directory "E:/AppServ/net"> Options FollowSymlinks ExecCGI Order allow,deny Allow from all DirectoryIndex default.htm default.aspx index.html index.aspx </Directory> # For all virtual ASP.NET webs, we need the aspnet_client files # to serve the client-side helper scripts. # 注意:下面两行需要对应.Net Framework安装的目录 AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) "C:/WIN2003/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 支持 End.
注意蓝色:两个地方要修改
1.AspNetMount /asptool "E:\\AppServ\\net" 这一句:指定网站挂载的URL地址 如我的就是 访问:http://127.0.0.1/asptool/ 的时候 其实是访问我本机电脑上的 E:\\AppServ\\net目录
2.<Directory "E:/AppServ/net"> 指定aspx文件发布目录
不出问题 重启Apache服务即可。
在net目录下新建 default.aspx 即可访问 http://127.0.0.1/asptool/default.aspx
祝你早日成功!
原文请参考:http://www.cnblogs.com/webflash/archive/2009/07/06/1517686.html