|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。. S. x2 k8 x8 g% ]$ S8 q) y
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
4 Z [5 E% ~# A& \, y下面就介绍让Apache支持ASP.NET的办法。
* y; T" T% _, f* A" F: t
6 ^8 s& B! |; v: i# k 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
% g; S( {* Z2 ?: M9 N
; @4 Y# d$ X" Z; W1 C! U 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:6 t$ Q8 f0 W4 L9 v' t
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
: q+ a6 {5 M# G; y! T! H* W具体的安装过程请参阅其他文章,本文不再赘述。, O- c- k2 E7 l2 H
9 S4 q Y# d, T K( ?6 s$ \, R 下面要下载并安装Apache环境下的ASP.NET模块。下载地址:2 x: A0 y/ l' Z' C
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi( ^" ^1 y3 g, P6 m& n
下载完成后双击打开,一路Next即可安装完成。6 _/ n9 |. j. ?( Q" g! G* B }
" X7 V |) p3 v5 E& z ]$ e 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加: {: L! U; s1 [4 `; x" z
' z7 B. U1 l0 j4 j1 v, L#asp.net* j+ w) Q& N& S9 T u
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
0 H% j1 |! Y/ A2 D2 R. G
9 q& V9 p9 \9 z* J, A) H4 R! AAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
; c, I6 ?, x( g: a* U licx rem resources resx soap vb vbproj vsdisco webinfo
. f" _' S9 L6 {3 u) T: x0 o- Y$ v$ ^
<IfModule mod_aspdotnet.cpp>/ P, u; D1 |1 p2 Q/ L% x; ^
* p# N# r4 y/ u: S6 V$ S5 O1 @3 f9 r
# Mount the ASP.NET example application5 \$ {. q& o( ~7 Y8 ~
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
+ O1 ^; W) q4 e2 a' G! Y3 S5 L$ n/ g8 n0 D- i# J
# Map all requests for /active to the application files
5 y9 i. W* O0 m- s9 a2 t$ V Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
' Q; Z u( t- I/ e- K4 y1 ~. W0 {2 q, y( \
# Allow asp.net scripts to be executed in the active example
; [' m9 K. d/ z. w' |) [5 j <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
/ E6 _* K1 q. v6 e Options FollowSymlinks ExecCGI
0 o3 Y6 Y8 i5 T& D( W Order allow,deny
! G+ [/ Q- M) @* t7 P: P3 m Allow from all* R" O/ P5 ]" J' C/ M5 s
DirectoryIndex Default.htm Default.aspx; x: W+ D8 [7 _6 ]2 F# Y2 T L! |
</Directory>
! P5 G) @ R' x* m8 \1 i7 L/ d
: J7 n4 Y& E' _7 J" P, j # For all virtual ASP.NET webs, we need the aspnet_client files # x+ ]- T1 _& M' m8 c
# to serve the client-side helper scripts.: K0 w3 B# S& l5 \5 E% i/ E X0 I
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
1 V( d! ~8 h8 X' R "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4". p; A( [* W7 S6 z( o z
<Directory \
9 r0 A3 Y5 ^7 X! C9 W% q "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">; _2 ^- }. Y W1 N3 p$ M4 N
Options FollowSymlinks$ Z& }, K& j; S" p0 a6 c* E
Order allow,deny
5 q X- Q, M/ H O6 n Allow from all- r3 D' V1 f4 \* [3 L
</Directory>
! |# G/ C% V z' g' ~3 ]9 M# A2 U5 M4 h
</IfModule>4 z; {1 L: [2 @9 q2 _
; w5 t& \) w( B( x; v 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。' l; G6 C2 n1 Q$ G
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。1 x( `" L6 w% W* l) ^0 }' Y% q
1 ?% {$ D$ e( W$ u/ r 由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|