|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。( \, Y. Q6 K s, k3 o
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
7 D+ h3 I7 S" N0 `/ l下面就介绍让Apache支持ASP.NET的办法。
W( g# E/ x6 R8 y+ m; \
9 _& h6 x8 C* n# g0 z. ` 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。. a2 I# E% t3 q3 P
5 E! Q3 E$ v5 f* |, a9 M0 J 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
}% H% |# r' R, n3 Dhttp://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
/ c; |2 E. z7 F' r( O具体的安装过程请参阅其他文章,本文不再赘述。$ \7 V+ x* w3 P! s3 Z4 I
( k2 w/ b" y9 N# b2 w# V
下面要下载并安装Apache环境下的ASP.NET模块。下载地址:- [& M2 q1 C5 M, ]2 k. d4 V3 |
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi5 N2 ?0 u' C4 k% Y' J8 |' G. \
下载完成后双击打开,一路Next即可安装完成。* u( O# p& d) t) v
8 ?( x' u+ L' r7 ~! [ 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:3 r& d- q1 B7 V# `! c
# O3 ^, ~' N2 [8 Z3 u' X7 S#asp.net
; I* `4 x4 [9 C7 F& x! sLoadModule aspdotnet_module "modules/mod_aspdotnet.so"
( _+ F& A& e7 f7 o3 v+ F) L1 W w4 G: P8 \+ m$ L
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
) r$ a2 D" E0 v$ ]5 v8 T licx rem resources resx soap vb vbproj vsdisco webinfo
2 i+ z6 t4 W* q e1 R9 `3 c
& [ n& }, z" A9 H3 i<IfModule mod_aspdotnet.cpp>
9 Q) b6 F" G/ Y i3 D% x& P3 Q( u3 R# \- p4 j
# Mount the ASP.NET example application0 x4 |1 t6 {0 G6 d4 S
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
6 o0 |0 E; b3 k
" [) w+ `2 Q. H4 V$ B* o # Map all requests for /active to the application files
5 m$ }. s1 j1 f4 G" L- Q Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
+ [. w- b% i: }* v5 p4 T6 ]/ g6 |. V1 q6 ^% {* B
# Allow asp.net scripts to be executed in the active example
2 U% ^# l. l6 m <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
! `: ?# z: s7 {9 m4 d- ^ Options FollowSymlinks ExecCGI( `6 J3 J) w. y( d
Order allow,deny* D- X, o- @7 v' @$ h/ X
Allow from all
; P% U5 d0 y& T( [; U6 l* [; Q DirectoryIndex Default.htm Default.aspx
) z6 v) k& o& m# C; I$ u </Directory>& X# o# u% v2 ?7 U' J
, C" E* } W1 A # For all virtual ASP.NET webs, we need the aspnet_client files
5 I) r/ I7 p4 |2 V8 H9 Y p # to serve the client-side helper scripts.) d& T5 x9 t8 U0 a) W* }
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \1 v5 U! Z8 | c% M9 @3 P3 Y5 P
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"0 h7 @6 e, k/ k* e5 f" j( x0 d( O
<Directory \0 l1 | h% H S, B, p) t7 ?
"C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
' T2 c+ V- P/ F4 g1 q3 W! S Options FollowSymlinks
' _* L3 u, {- E7 v. n6 L Order allow,deny
( p3 I( z. h, M: A2 H. m Allow from all
% K6 b1 Y2 P8 x0 O! U </Directory>
) e0 N! K( z( T& d$ u& r$ s1 f4 p4 Y c9 I5 u( n- F0 g- w
</IfModule>
6 F1 |! X8 C( }/ j3 e/ t
, Q9 v0 Z0 q [6 h$ q6 _$ a" l 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。5 }1 _" S3 n4 W6 R
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。) q: L% ^+ r8 h f! k$ z
% z: V" O% Z: w, C- H- s# N 由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|