让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查看效果了。 

目录
相关文章
|
28天前
|
开发框架 .NET C#
在 ASP.NET Core 中创建 gRPC 客户端和服务器
本文介绍了如何使用 gRPC 框架搭建一个简单的“Hello World”示例。首先创建了一个名为 GrpcDemo 的解决方案,其中包含一个 gRPC 服务端项目 GrpcServer 和一个客户端项目 GrpcClient。服务端通过定义 `greeter.proto` 文件中的服务和消息类型,实现了一个简单的问候服务 `GreeterService`。客户端则通过 gRPC 客户端库连接到服务端并调用其 `SayHello` 方法,展示了 gRPC 在 C# 中的基本使用方法。
38 5
在 ASP.NET Core 中创建 gRPC 客户端和服务器
|
1月前
|
Android开发 数据安全/隐私保护 虚拟化
安卓手机远程连接登录Windows服务器教程
安卓手机远程连接登录Windows服务器教程
60 4
|
1月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
58 4
|
2月前
|
分布式计算 大数据 Apache
利用.NET进行大数据处理:Apache Spark与.NET for Apache Spark
【10月更文挑战第15天】随着大数据成为企业决策和技术创新的关键驱动力,Apache Spark作为高效的大数据处理引擎,广受青睐。然而,.NET开发者面临使用Spark的门槛。本文介绍.NET for Apache Spark,展示如何通过C#和F#等.NET语言,结合Spark的强大功能进行大数据处理,简化开发流程并提升效率。示例代码演示了读取CSV文件及统计分析的基本操作,突显了.NET for Apache Spark的易用性和强大功能。
55 1
|
2月前
|
监控 网络安全 调度
Quartz.Net整合NetCore3.1,部署到IIS服务器上后台定时Job不被调度的解决方案
解决Quartz.NET在.NET Core 3.1应用中部署到IIS服务器上不被调度的问题,通常需要综合考虑应用配置、IIS设置、日志分析等多个方面。采用上述策略,结合细致的测试和监控,可以有效地提高定时任务的稳定性和可靠性。在实施任何更改后,务必进行充分的测试,以验证问题是否得到解决,并监控生产环境的表现,确保长期稳定性。
94 1
|
2月前
|
网络协议 Unix Linux
一个.NET开源、快速、低延迟的异步套接字服务器和客户端库
一个.NET开源、快速、低延迟的异步套接字服务器和客户端库
|
2月前
|
网络协议 Windows
Windows Server 2019 DHCP服务器搭建
Windows Server 2019 DHCP服务器搭建
|
2月前
|
网络协议 Windows
Windows Server 2003 DHCP服务器搭建
Windows Server 2003 DHCP服务器搭建
|
2月前
|
网络协议 定位技术 Windows
Windows Server 2019 DNS服务器搭建
Windows Server 2019 DNS服务器搭建
|
2月前
|
安全 网络协议 网络安全
Windows Server 2003 Web服务器搭建
Windows Server 2003 Web服务器搭建

推荐镜像

更多
下一篇
DataWorks