找回密码
 注册
搜索
查看: 5698|回复: 0

让Apache支持ASP.NET

[复制链接]
发表于 2006-12-17 18:33:15 | 显示全部楼层 |阅读模式
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。: |* D, }$ A$ F7 y# t! {- o
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
6 d. w1 p6 l5 C  D2 H0 s( t下面就介绍让Apache支持ASP.NET的办法。
; B& `/ o2 }5 t! K6 J  z5 Z, x4 r& \) V
     首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
! j- f- _1 _5 Z  Z4 L, z
9 L  c9 |& g" C" r     然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
' W* I9 W, s1 uhttp://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
$ o. R$ T) I8 E) r" p具体的安装过程请参阅其他文章,本文不再赘述。
  q& [1 D. d: {: G$ o8 p: t
' i& b5 j6 v3 I     下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
8 E" s7 {" F+ X1 U; j5 y' S3 dhttp://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
  @( _6 c& z: U8 u8 Y3 M* k下载完成后双击打开,一路Next即可安装完成。6 p! G9 ?& O5 b& W
+ @$ `! r% j* t" v
     为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
6 }: ]" k, Q4 d) r0 H0 q1 {6 d2 b4 f
#asp.net7 k# s) X8 I% n4 O  {% w+ W( {
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
+ y2 F* o/ o# A/ ?7 x( m5 u
% d" G) ~0 X& A2 q2 p3 ?AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
  x' Q  W! L) l- n            licx rem resources resx soap vb vbproj vsdisco webinfo 6 a5 J; _7 {! o  w, z: {

: P% |: N1 }1 ^<IfModule mod_aspdotnet.cpp>
& T/ {7 Z/ p/ }( m& b" t, z3 u7 `0 r
  # Mount the ASP.NET example application: A& A) M+ v7 z2 p3 i! H. F% x7 h
  AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
  M" W& A' N+ k& ]
$ D7 B' Q, J# o8 U1 F& y1 }4 V  P  # Map all requests for /active to the application files
: n; m$ [0 G% J  Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
' m& r) p# `1 h" J6 V. R, P1 X2 Z& N
7 B& d4 v4 p  q- Z- R3 a4 H+ i  # Allow asp.net scripts to be executed in the active example
1 M) E  U+ B% W$ b, L: A1 M  <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
1 z7 X0 q2 j7 {8 f    Options FollowSymlinks ExecCGI& D) s8 }; P; f2 ^- |! h
    Order allow,deny
* n7 \4 e7 d- ?9 u) z. u, k% q    Allow from all
3 f( m( b0 i' c; W* W    DirectoryIndex Default.htm Default.aspx" ]3 J  \% W( O1 u# g
  </Directory>
  u+ Z3 |9 j! p! a4 J3 i5 D# o/ {* N  R% m' t
  # For all virtual ASP.NET webs, we need the aspnet_client files 4 |  S# R; Z$ e9 k& Z
  # to serve the client-side helper scripts.* _9 F' C: E: h) u: i, ?1 y
  AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \1 H! S& z8 o6 h
      "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
) `% Q. E8 U$ I  |5 _  R  <Directory \5 F8 C& b0 g' @0 `0 ~
      "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
5 c0 [8 `: \0 d* Y  T- Y: f    Options FollowSymlinks
2 B- [) a7 A; v' s& @5 ~    Order allow,deny
8 k' E+ B$ R# R9 f0 ?8 z/ _    Allow from all
7 h, ~5 K5 G: g5 @. w( G5 W/ D  </Directory>
) t& {5 L/ }/ J0 ~5 R  `+ P  X% n( l( `5 w7 B
</IfModule>
2 K' J1 w# u0 d" l+ |. z8 K
9 N) a0 `% |+ O* ~& O; Q; u6 A6 h. U7 Q     其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。+ v$ n* Z7 |3 Y
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。5 T+ @: q9 @7 R8 [0 t7 @- h
: i5 I2 a; j/ b2 M
     由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宁德市腾云网络科技有限公司 ( 闽ICP备2022007940号-5|闽公网安备 35092202000206号 )

GMT+8, 2026-1-12 08:47 , Processed in 0.019989 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表