让Windows下的Apache服务器支持ASP.NET-阿里云开发者社区

开发者社区> 宝珠> 正文

让Windows下的Apache服务器支持ASP.NET

简介: ASP.NET 2.0是最新一代的Web应用开发平台,作为.NET Framework的一部分,它功能强大、性能高且易于开发。
+关注继续查看

ASP.NET 2.0是最新一代的Web应用开发平台,作为.NET Framework的一部分,它功能强大、性能高且易于开发。作为微软的产品,用于搭建ASP.NET最好的Web服务器当然是IIS(IIS和Apache的比较)。然而,如果一台Windows机器已经装了Apache并已经有了Web应用,就无法再开启IIS(在同一个端口下)。还好我们在Apache httpd下也能对ASP.NET进行支持。

致力于.NET跨平台的最著名的开源项目Mono便提供了一个Apache下的插件Mod_mono来对ASP.NET进行支持。然而Mod_mono主要是针对Unix/Linux平台的。虽然有提供Windows下的版本,但画蛇添足的是它基于Mono而不是Windows现成的.NET Framework,而且更新不及时,不能对ASP.NET 2.0进行很好的支持。

也有人制作了独立的Web服务器来支持ASP.NET,但仍然不能满足我们直接使用现有Apache的需求。

事实上,Apache官方早就提供了ASP.NET解决方案,就是mod_aspdotnet模块。但此插件一年半以前就停止开发了,不知道是给Mono让道还是担心ASP.NET发展太快。不过我们仍然可以从Apache的模块存档库里下载到它。

mod_aspdotnet比mod_mono精巧多了,安装程序才300多K,只要系统里安装了.NET Framework,便能完美支持ASP.NET,甚至2.0。

具体实施相当简单,步骤如下:

1. 下载安装最新的Apache HTTP Server(这里给出的是2.2.3的链接)并进行基本配置(已开启Apache服务的略过此步)。

2. 下载安装mod_aspdotnet模块

3. 修改配置文件(通常位于C:/Program Files/Apache Group/Apache2/conf/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

AspNetMount /SampleASP "c:/SampleASP" 
Alias /SampleASP "c:/SampleASP" 
#/SampleASP是用于执行asp.net的目录的别名,c:/SampleASP是它的实际地址

# 打开脚本运行权限
<Directory "c:/SampleASP"> 
  Options FollowSymlinks ExecCGI 
  Order allow,deny 
  Allow from all 
  DirectoryIndex index.htm index.aspx 
#设置默认文件
</Directory>

# 对于ASP.NET虚拟页面,需要如下aspnet_client文件来支持客户端帮助脚本
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>
#asp.net

4. 在C:/SampleASP下创建ASP.NET站点(建立index.aspx文件)

5. 重启Apache服务器。

6. 搞定,可以用http://localhost/SampleASP/index.aspx查看效果了。 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
数据同步框架MS Sync Framework - IDE快速开发支持Local Database Cache
数据同步框架MS Sync Framework [术语、例子、参考资料、Tips] http://www.cnblogs.com/2018/archive/2011/02/22/1961654.html  数据同步框架MS Sync Framework-不同场景使用例子和简要分析 http://www.cnblogs.com/2018/archive/2011/02/23/1961657.html 以上两篇文章对框架的基础有了描述,通过IDE的提供Local Database Cache可以快速的实现一个常用的同步应用。
732 0
phpstudy APACHE支持.htaccess以及 No input file specified解决方案
你的Apache安装文件夹conf里找到httpd.conf文件 索LoadModule rewrite_module modules/mod_rewrite.so 如果前面有注释符号#,请去掉。 搜索Options FollowSymLinks,然后将它下面的AllowOverride None 修改为AllowOverride All; 【1】 没想到遇见了 N
3457 0
ECS支持跨地域跨资源类型的标签(TAG)操作
ECS资源可以使用标签进行分组管理,如何快速将自己多地域/多种类型的资源都打上标签(TAG)呢?
586 0
+关注
宝珠
说实话不如做实事
243
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载