|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。
2 R ^( P% \+ ]) K.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。$ Z" L* |% l% h5 F4 e! H& x- T
下面就介绍让Apache支持ASP.NET的办法。
5 p" K6 \5 N9 D4 K# I; k9 c' w" J ~: q r1 O5 }! M" T7 g. ^4 o# @% `
首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。( U/ {+ l4 ^: h# E/ X
+ R; {" D3 D% j9 K2 u 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
4 u. `. ?" ^7 ~$ l0 thttp://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi& @$ l1 r& I- R. O: |
具体的安装过程请参阅其他文章,本文不再赘述。
2 K. ]/ V, }% e4 W+ [+ e5 l- i, m2 g+ Y: @
下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
' g- ~3 J# \, x* r- I1 C. phttp://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
/ T3 L0 Q" L y1 x下载完成后双击打开,一路Next即可安装完成。! U( ^! v6 r0 E
+ X" \8 I) u& [$ Y- J( m 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
% [+ g! { |: W' w% V
4 k) K' y r- i" s) r3 \+ ?* @#asp.net' m/ |. Q/ y7 L: @% k
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
P4 H2 p9 F, `% i5 z: d4 N
2 O2 |" w5 r2 R5 z9 m9 j! E: iAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
+ c5 W; O5 i+ h% f licx rem resources resx soap vb vbproj vsdisco webinfo
6 d* h. T2 O6 P( c% D2 P v. N8 {8 q
<IfModule mod_aspdotnet.cpp>
0 }+ g1 Y( u- ~ v* z: u/ X- o
& T7 e. n+ J6 g4 X& V5 l0 A # Mount the ASP.NET example application
( N% n1 F+ s/ I F6 H' }. _ AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
3 B- s/ @0 n& Z# j
1 ]! y' q7 T+ M O" h # Map all requests for /active to the application files
+ S6 w6 h7 L- R$ z \! J$ T Y Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"8 {4 [5 b/ {( F, S2 Y6 O7 {2 [, R
6 S1 U* M. q* Z
# Allow asp.net scripts to be executed in the active example2 T/ P# m! a4 L
<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
% R. q: ]0 d$ a! i# c0 p Options FollowSymlinks ExecCGI% {2 Z4 B$ D$ _. m8 e2 v! p
Order allow,deny
, R; \$ @- V8 @9 p$ v$ |5 x Allow from all
, L* Y2 [& B& Q0 U4 d DirectoryIndex Default.htm Default.aspx* s s% z6 D* P7 ]
</Directory>! e% g3 `/ g7 d& y* u
2 M6 W p: C% x% r
# For all virtual ASP.NET webs, we need the aspnet_client files 2 D: _' d% M# I3 _; x" r% y
# to serve the client-side helper scripts.# p8 K3 K2 R" p5 w7 I n# e
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
9 n m! [$ j: X6 \9 C' N "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"* k8 Y* e2 C+ F6 z% q9 d" U% [
<Directory \
" A h E, g+ M% n6 q' J "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">" K$ }+ Q+ ]! {9 K- c& L8 z
Options FollowSymlinks
; R1 A( v9 x' B Order allow,deny
, n: j' V- u& f8 | Allow from all
# y6 W9 e; ?1 v3 L! C4 F </Directory>
" m8 r/ d) |0 H9 ^3 J0 Z. ~! `/ o3 H3 `4 A# q% ~( B
</IfModule>
! f. w- b( h- b$ A2 B$ a0 E* r9 O0 `- [1 i7 R/ D* V3 S% X# C5 q
其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。4 U/ y0 G5 ~" k7 A# ]3 d9 B7 @
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
. M# O+ H; L8 E4 i A* U* h/ A8 ~! x* F5 x" I- H" w+ B$ p+ b, q
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|