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

让Apache支持ASP.NET

[复制链接]
发表于 2006-12-17 18:33:15 | 显示全部楼层 |阅读模式
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。
: q; o- k+ `) D4 _4 A7 m7 C.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
. a" |! X! W% |6 |! W下面就介绍让Apache支持ASP.NET的办法。) N& b- }% M1 \+ f+ ]

# ~* w( o  _3 v     首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。6 i# X1 }* ]) P* W: {' _, ~
/ E+ E, s- i$ [* @" o* Z# N
     然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:' ~: e8 @7 l8 d+ e8 J) j
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
$ s/ o5 C9 M0 z9 ^" ?具体的安装过程请参阅其他文章,本文不再赘述。
3 D6 ?2 r; e9 H3 S, }6 P9 _$ Y8 f/ Y3 D8 O! [
     下面要下载并安装Apache环境下的ASP.NET模块。下载地址:. p+ M. K' D0 G0 k8 w. l3 ^. {
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
. p* A! p: ~' x1 \7 z5 W下载完成后双击打开,一路Next即可安装完成。
- L( V2 J+ A+ s! {6 c/ x  b. }% s0 r7 H3 T7 S7 k. l8 {" P
     为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
" @5 [# C9 e$ C' t, W6 W$ H# `
7 ~# j9 o7 W8 Y) n$ i- B6 R#asp.net  d1 \1 C3 H& `4 f6 V! }
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
) ~; j; @% B! j) p
- n4 I9 q, ]( l# v) @4 m" jAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
. H) v. }- `3 q# \/ S7 ^5 H            licx rem resources resx soap vb vbproj vsdisco webinfo % V  o* G  h! {1 v5 P
' V: S% K, u$ A; h1 k4 n7 r' O  _
<IfModule mod_aspdotnet.cpp>
6 ]# r- C% V0 b( ]8 j
0 x6 ]7 H" b1 q9 `6 i6 A( V5 Q  # Mount the ASP.NET example application: w( W( c, O( G( g
  AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
' ]7 c6 l! c8 Y. G; ?/ j, f. M0 V! o2 y! M3 H' H  e1 y3 L: [
  # Map all requests for /active to the application files; z8 f6 y5 N" K
  Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"+ E- l, C3 x2 J! o' E6 X, U
. t7 ~, v4 A9 |$ w% D
  # Allow asp.net scripts to be executed in the active example
% e( N! y  q) t( ^- N  <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
( L7 g0 A5 p) A    Options FollowSymlinks ExecCGI
1 L3 r3 g) ?7 Q8 k, @0 K/ d    Order allow,deny
1 L: u8 B# S$ X$ r: U/ |    Allow from all1 b( i! I1 ]% h! I/ p% `/ x2 v
    DirectoryIndex Default.htm Default.aspx
' l3 H8 J$ H( @2 @' ^1 g+ d0 Q% s  </Directory>+ }1 P8 ^2 i' C

: C" v7 e' {% \4 P+ k, _( S% }  # For all virtual ASP.NET webs, we need the aspnet_client files
% ~8 z- e; l$ O, P' ?  # to serve the client-side helper scripts.$ k7 |% k! e$ r0 a/ ?1 Q
  AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \9 T$ d5 u7 I. v* N! X! x
      "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"9 T+ I( o2 V2 O) F% O5 N0 ~
  <Directory \# q/ W2 q7 m/ _( ]) f2 ?
      "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
3 A4 S. h4 u" J    Options FollowSymlinks
8 K+ y$ n8 e: e9 V# e: Q1 z    Order allow,deny
( z- e1 R0 w' a; j. D) y3 K, W% X    Allow from all! Q  B% k/ _6 m  e' d
  </Directory>
, q4 T/ [0 K# H5 v7 C+ u0 w: `. W/ e: c* r1 A
</IfModule>
: _5 x$ N: N3 U# g  B, ^9 F5 ?& H8 ^9 \8 S2 h: Y
     其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。' S; E- S' ]$ B/ Q3 a' c& f
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
6 i- r$ v# I: [+ t) a1 J) m: J
0 C: ^7 t" p$ W0 a. H  g" X     由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-16 21:28 , Processed in 0.019663 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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