|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。 ]. u8 a/ v7 q2 ]
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。# O' t3 z! K7 o/ \0 c
下面就介绍让Apache支持ASP.NET的办法。
) a! g0 p+ z6 A! `, L5 A/ @
0 O4 h" X# y5 N% D; z' X! T 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
! _3 G. Z2 H6 F4 V) r
2 T+ Z8 r9 r- j" B 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:2 G/ u& m% o- [. Y
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi! }9 @+ x' o( f0 l7 s
具体的安装过程请参阅其他文章,本文不再赘述。& {( W. b% G' B) u3 i2 u
! r8 v7 Z1 J# q: y0 { a 下面要下载并安装Apache环境下的ASP.NET模块。下载地址: u) Q. h U3 G# k5 t& D* Y6 z
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi" q; q$ Q4 e- @% P* I. G5 W8 K3 @' j
下载完成后双击打开,一路Next即可安装完成。; C# L6 h6 f Z. K; y
7 i' c( Q( t/ C6 ^$ E4 Y$ {+ _
为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
% [. }- Y" \, Y, q& o' V \) J* g& o1 U* z' \" V
#asp.net
- w2 y( `) B5 `" l3 wLoadModule aspdotnet_module "modules/mod_aspdotnet.so"5 J) s4 M' H n/ r* b7 m
0 d- f. K+ G% }3 fAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
" V6 m. |* E3 z, `7 W licx rem resources resx soap vb vbproj vsdisco webinfo 4 f- H* j; p: z" x% w5 K' H% L
; E, `% K$ I' j& i0 G, q
<IfModule mod_aspdotnet.cpp>
?6 _+ D+ P: j: L4 b0 s' {1 W. A$ U3 I1 E0 s
# Mount the ASP.NET example application% l1 K$ `* `" u4 x" Y9 E2 e
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"! P/ @+ A7 k* W0 Q8 D5 P
4 f7 I1 F8 Z4 E6 s" _ # Map all requests for /active to the application files" H& D8 a3 A( h) |/ S2 [
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"1 B; |% A5 Z v. z$ J
/ O! K4 E$ a4 }4 d/ w+ F2 O- v
# Allow asp.net scripts to be executed in the active example
5 c2 c+ J) ^1 O+ s3 q8 J+ ?- |# N <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">5 ?0 z) ?2 C( z% e! b
Options FollowSymlinks ExecCGI: S' ~8 t+ P# f; H6 h) Q
Order allow,deny9 c; C1 A6 ~/ n2 _' o
Allow from all4 |3 s2 f+ D8 A# Z
DirectoryIndex Default.htm Default.aspx9 n+ h0 ^4 p6 _+ @- }. S4 l4 d
</Directory>
; k7 ]) A5 M- y4 s9 J( W9 e$ J. ?6 g7 H! E1 _8 A8 N: ^3 d% E
# For all virtual ASP.NET webs, we need the aspnet_client files , R7 u% h* {# m) ^, u; @
# to serve the client-side helper scripts.
6 M) n' e1 ~, X* N0 } AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
8 Z2 ?, z1 N6 J "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
/ _ E$ A- M% {0 M! f1 j6 m9 m <Directory \
f5 {6 Y( S- ?9 d2 l) v "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
; Y+ a; P3 \) H; X8 z Options FollowSymlinks
( n5 [' S* ^: D: C7 s- G Order allow,deny
( _7 r4 n* m+ n" l, P2 P/ [* p Allow from all6 w Y5 Y% Z1 E- q6 Z
</Directory>
; S$ R# z7 Q, l9 o3 x3 K" z4 Y. C* l* [8 X* w3 Q3 a
</IfModule>; X3 s1 \% U! W$ t2 D1 {
+ s Y$ R6 m u- V1 G" s 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。
' i. ?0 U% B+ A0 R4 g现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
* }# D$ G: N+ m4 |( J3 j. |/ s) y' D1 H
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|